钱景 發表於 2025-8-7 17:00:00

2025.8.7 java课堂笔记

<p><strong>一、复习</strong><br>
java的格式化输出</p>
<pre><code>System.out.printf("%-10d%-10d",a,b);
</code></pre>
<p>m,n进行变量的交换,不允许定义并使用其他变量</p>
<pre><code>m=m+n;
n=m-n;
</code></pre>
<p><strong>二、类型转换</strong><br>
数据类型转换分为自动类型转换和强制类型转换<br>
前者:从小到大<br>
1.隐形转换</p>
<pre><code>double a=10;//int 10,变成10.0给a(自动类型转换)
System.out.println(a);//输出的为10.0
</code></pre>
<p>后者:从大到小<br>
操作如下:</p>
<pre><code>float f1=2.523f;
int m=(int)f1;//不会四舍五入,是直接截取掉小数部分
</code></pre>
<p>2.整数默认是int型 byte</p>
<pre><code>byte a=10;
byte b=20;
byte num=a+b;//错误,会报错,a+b会先升级为int类型
byte num=10+20;//正确,常量优化机制
</code></pre>
<p>3.boolean类型不能参与类型进行转化</p>
<p>4.对于一个表达式(类似于此a+b+c/e)的运算结果的类型,由该表达式中数据类型最高的变量来决定</p>
<pre><code>System.out.println(3/2);//1
System.out.println(3.0f/2);//1.5
System.out.println(3/2.0f);//1.5
</code></pre>
<pre><code>byte b=2;
short s1=33;
float f1=2.3f;
double d1=0.245d;
double m=b+s1+f1+d1;//正确,是数据类型最高的变量
float n=b+s1+f1+d1;//报错,不是最高的
</code></pre>
<p>复合赋值运算符</p>
<pre><code>m++;
m+=10;//先加再赋值
m-=10;
m*=10;
m/=10;
m%=10;
m--;
</code></pre>
<p><strong>三、掌握java的判断语句(if和swich)</strong><br>
程序的结构语句<br>
1.顺序结构:代码根据从上到下的顺序执行<br>
2.判断结构:根据判断的结果来执行<br>
3.循环结构:多次重复执行的操作</p>
<p>(1)判断结构</p>
<pre><code>if(){}
</code></pre>
<pre><code>if(){}else{}//java中不添加大括号会爆红
</code></pre>
<pre><code>//三目运算:判断条件?语句1:语句2;
Scanner in=new Scanner(System.in);
System.out.println("");
int m=in.nextInt();
String sex= m==1 ? "男" : "女";
System.out.println(sex);
</code></pre>
<pre><code>三目运算的延申
Scanner in=new Scanner(System.in);
System.out.println("请选择:1.地铁 2.公交车 3.出租车 4.网约车");
int m=in.nextInt();
String msg= m==1 ?"地铁 " : m==2?"公交车" : m==3?"出租车" : m==4?"网约车" : "error";
System.out.println(msg);
</code></pre>
<pre><code>//多重if else
//常用于区间的判断
if(){}
else if(){}
else if(){}
else
</code></pre>
<pre><code>//嵌套if
if(){
if(){}else{}
}
else{}
</code></pre>
<p>(2)分支语句switch</p>
<pre><code>switch(变量!)//注意:数据类型不能是*小数和long*,可以是Sting,char,int
{
case 常量:语句...break(可选);
...   //1.case后面的值不能重复
...   //2.case和Default没有顺序
...   //3.break可以省略,如果省略,意味着该语句执行后会贯穿下去执行后面的语句,直到遇到break为止;
...   //4.可以没有default语句
default: 语句;...break;
}
</code></pre>
<pre><code>//判断输入的英文字母是否是元音字母(aeiou)
Scanner in=new Scanner(System.in);
System.out.println("请输入一个字母:");
char c=in.next().charAt(0);//接收输入的String的第0个字符
   switch(c){
   default:
      System.out.println("不是元音字母");break;
   case 'a':
   case 'e'://由于case语句输出的内容相同,此处省略了break;
   case 'i':
   case 'o':
   case 'u':
      System.out.println("是元音字母");break;
      }
</code></pre>
<table>
<thead>
<tr>
<th>区别</th>
<th>if else多重判断</th>
<th>Switch</th>
</tr>
</thead>
<tbody>
<tr>
<td>适用场景</td>
<td>区间的判断</td>
<td>固定的判断</td>
</tr>
<tr>
<td>代码的可读性和清晰性</td>
<td></td>
<td>好</td>
</tr>
</tbody>
</table>
<p><strong>四、java的循环结构</strong></p>
<p>(1)while循环</p>
<pre><code>//1.循环变量的初始值
while(2:循环条件){
//3:循环体(必须改变循环体的值)
}
</code></pre>
<p>演示可以选中while那一行,然后进行爬虫!</p><br><br>
来源:https://www.cnblogs.com/Granya/p/19026825
頁: [1]
查看完整版本: 2025.8.7 java课堂笔记