(基础+运算符+流程控制)相关案例和重点

news/2025/2/4 12:57:52/文章来源:https://www.cnblogs.com/HanMengzhen/p/18698105
  1. int类型:

    • 变量在使用之前必须赋值
    package d5.oop;public class Person {public static void main(String[] args) {int a;                                 //定义变量a=50;                                  //给变量赋值System.out.println(a);}
    }50
    
    • 变量直接定义赋值加输出:
    package d5.oop;public class Person {public static void main(String[] args) {int a=60;int b=90;System.out.println(a);System.out.println(b);}
    }60
    90
    
    • int定义两数相加:
    package d5.oop;public class Person {public static void main(String[] args) {int a=60;int b=90;System.out.println(a+b);}
    }150
    
    • 对变量重新赋值(重新赋值的时候方法名后面可以不加类名)
    //int类型的
    package d5.oop;public class Person {public static void main(String[] args) {int a=60;System.out.println(a);a=80;System.out.println(a);}
    }60
    80//String类型的    
    package d5.oop;public class Person {public static void main(String[] args) {String a="hello";String b="hi";System.out.println(a);System.out.println(b);a="lo";b="lp";System.out.println(a);System.out.println(b);}
    }hello
    hi
    lo
    lp
    
    • 一条语句定义多个变量
    package d5.oop;public class Person {public static void main(String[] args) {int a=60,b=90,d=100;System.out.println(a);System.out.println(b);System.out.println(d);}
    }60
    90
    100
    
    • int进行加减计算
    package d5.oop;public class Person {public static void main(String[] args) {int a=0;a++;a=a+2-1;a=a+2-1;System.out.println(a);}
    }3
    
    • 进制表示
    1. 二进制:以0b开头;
    2. 八进制:以0开头;
    3. 十进制:电脑默认十进制,不用加修饰;
    4. 十六进制:0x开头;
    5. 关键字必须小写
  2. 标识符:(类,方法,变量)

    • 方法跟变量是小驼峰命名:firstName
    • 类名是大驼峰命名:GoodStudent
    1. 键盘入录:
    package d5.oop;import java.util.Scanner;                  // 导包public class Person {public static void main(String[] args) {Scanner l=new Scanner(System.in);   // 创建Scanner对象System.out.println("请输入整数");int i=l.nextInt();                  // 接收数据System.out.println(i);}
    }请输入整数
    10
    10
    
    1. 键盘入录+运算:
    package d5.oop;import java.util.Scanner;public class Person {public static void main(String[] args) {Scanner l=new Scanner(System.in);   // 创建Scanner对象int i=l.nextInt();                  // 接收数据int n=l.nextInt();int h=l.nextInt();System.out.println();System.out.println(i+n-h);l.close();}
    }4
    6
    91
    
  3. System.out.println( ) ; 中的计算

    • 整数可以进行无误加减乘除
    • 小数在加减乘除的时候可能会报错
    • System.out.println(1+2+“abc”+1+2 ) ; // 3abc12 字符串后面的数据默认是字符串类型
    • System.out.println('a'+2); // 99
  4. 类型转换

    • 在转化时字符类型时,小数类型最好选double,byte,short,char类型最好选int,字符类型最好选String
    • byte<short<int<long<float<double
  5. 将输入的个十百位全部输出

    package ko;import java.util.Scanner;public class k1 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);            // 新建的scanner在Scanner类中System.out.println("输入三位数");int ad=scanner.nextInt();System.out.print("个位是"+ad%10+"\t");              // 输出个位System.out.print("十位是"+ad/10%10+"\t");           // 输出十位System.out.print("百位是"+ad/100%10+"\t");          // 输出百位scanner.close();}
    }输入三位数
    862
    个位是2	十位是6	百位是8	
    
  6. 强制转换:(小变大不用强转,大变小必选强转)(将想要转化的类型加括号,后面跟上运算的方法名)

    byte a=50;         // 0011 _ 0010 ,最左面的0是符号位,0表示正1表示负不参与运算
    int v=a;           // (隐式转换)
    
    int a=300;
    byte b=(byte)a;         // 将a强制转换为byte类型 (强制转化)byte a=10;
    byte b=20;
    byte ab=(byte)(a+b);    // 如果转化的数超过了原有界限,那么就执行符号位不变,原码取反再加1进行赋值
    System.out.println(c); 30   
    
  7. 字符相加减:(在加减之前会自动转化为ASCII表对应的数值)

    package ko;public class k1 {public static void main(String[] args) {char v='a';int a=v+5;System.out.println(a);}
    }102
    
  8. a++跟++a的区别

    package ko;public class k1 {public static void main(String[] args) {int a=10;int b=a++;                      // b为自增之前的值,a=11,b=10int c=++a;                      // c为自增之前的值,a=12,c=12System.out.println("a:"+a);System.out.println("b:"+b);System.out.println("c:"+c);}
    }a:12
    b:10
    c:12
    

  9. 入录数值的比较:

    package ko;import java.util.Scanner;public class k1 {public static void main(String[] args) {Scanner a=new Scanner(System.in);System.out.println("请输入你的数值");int k=a.nextInt();System.out.println("请输入对方的数值");int l=a.nextInt();boolean p=k>l;System.out.println(p);}
    }请输入你的数值
    5
    请输入对方的数值
    9
    false
    
  10. 逻辑运算符

    & : 并且,两边都为真结果才是真(可以进行两数判断,也可以进行二进制运算0为false 1为true)

    | : 或者,两边都为假结果才是假

    ^ : 异或,相同false不同true(很少用)

    ! : 取反

与(&):

package ko;public class k1 {public static void main(String[] args) {int a=10;int b=20;boolean m=++a<10 & ++b<30;          // 不管a为真还是假,b都要进行运行System.out.println(m);System.out.println(a);System.out.println(b);}
}false
11
21package ko;public class k1 {public static void main(String[] args) {int a=7;int b=1;System.out.println(a&b);}
}1
  1. 短路逻辑运算符:

&&:短路与

||:短路或

短路与(&&):

package ko;public class k1 {public static void main(String[] args) {int a=10;int b=20;boolean m=++a<10 && ++b<30;          // 如果a的值为假,那么b就不进行运行了System.out.println(m);System.out.println(a);  System.out.println(b);}
}false
11
20
  • 运算符

& : 0为false ,1为true

| : 0为false ,1为true

<< : 向左移位,低位补零

》》: 向右移位,最高位根据符号进行填充,负数就填1,正数就填0

》》》:向右移位,高位直接加0

短路或(||) : 案例

package ko;import java.util.Scanner;public class k1 {public static void main(String[] args) {Scanner k=new Scanner(System.in);System.out.println("输入一个整数");int a=k.nextInt();System.out.println("输入下一个整数");int b=k.nextInt();boolean w=(a==6||b==6)||((a+b)%6==0);System.out.println(w);k.close();}
}输入一个整数
5
输入下一个整数
7
true

总结:在逻辑运算符中只能用true跟false进行判断,必须调用boolean值

  1. 三元运算符:

**格式:关系表达式 ?表达式1:表达式2 ; **

int max=a>b ? a : b;// 示例
public class k1 {public static void main(String[] args) {int a=10;int b=20;int ma=a>b?a:b;System.out.println(ma);}
}
  1. 案例:两只老虎

package ko;import java.util.Scanner;public class k1 {public static void main(String[] args) {Scanner m=new Scanner(System.in);System.out.println("第一只老虎体重");int o=m.nextInt();System.out.println("第二只老虎体重");int k=m.nextInt();System.out.println(o==k ? "体重相等":"不相等");  // 三元运算符m.close();}
}第一只老虎体重
90
第二只老虎体重
90
体重相等
  1. 案例:三个和尚

package ko;import java.util.Scanner;public class k1 {public static void main(String[] args) {Scanner m=new Scanner(System.in);System.out.println("第一个和尚");int o=m.nextInt();System.out.println("第二个和尚");int k=m.nextInt();System.out.println("第三个和尚");int l=m.nextInt();System.out.println(Math.max((o > k ? o : k), l)); // 运用三元运算符跟max结合找出最大值,max只能判断两个数大小m.close();}
}第一个和尚
190
第二个和尚
150
第三个和尚
168
190
package ko;import java.util.Scanner;public class k1 {public static void main(String[] args) {Scanner m=new Scanner(System.in);System.out.println("第一个和尚");int o=m.nextInt();System.out.println("第二个和尚");int k=m.nextInt();System.out.println("第三个和尚");int l=m.nextInt();int lo=o>k?o:k;                           // 三元运算符判断int po=lo>l?lo:l;                         // 三元运算符二重判断System.out.println("身高最高的和尚是:"+po);m.close();}
}第一个和尚
190
第二个和尚
150
第三个和尚
168
身高最高的和尚是:190

带括号的先进行运算

  1. 案例.选小吃

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m=new Scanner(System.in);System.out.println("输入你的钱数");double a=m.nextDouble();if (a>100){System.out.println("吃大餐");}if (a<100){System.out.println("小吃");}m.close();}
}输入你的钱数
11.69
小吃

案例.影院选座(嵌套)

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m = new Scanner(System.in);System.out.println("输入你的钱数");int a = m.nextInt();if (a < 101 && a > 0) {if (a % 2 == 0) {System.out.println("坐左面");}else {System.out.println("坐右面");}m.close();}else{System.out.println("您的输入有误");}}
}输入你的钱数
25
坐右面

案例:自动驾驶

package ko;public class light {public static void main(String[] args) {boolean yellow = false;boolean green = false;boolean red = true;if (yellow) {                               // 是true的话就执行返回语句,false就不执行System.out.println("witer");} else if (green) {System.out.println("go go go");} else {System.out.println("stop");}}
}stop
  1. swicth语句:
swicth(表达式){case 值1:   语句体1;break;            // 表示跳出,不能省略case 值2;语句体2;break;defult:              // 以上情况都不满足时执行的,可以省略语句体n+1;break;
}

案例:运动计划

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m = new Scanner(System.in);System.out.println("输入星期");String a = m.next();switch (a) {case "一":System.out.println("跑");break;case "二":System.out.println("游泳");break;case "三":System.out.println("走");break;case "四":System.out.println("琦");break;case "五":System.out.println("拳");break;case "六":System.out.println("爬");break;case "七":System.out.println("吃");break;default:System.out.println("有误");break;}m.close();}
}输入星期
一
跑

穿透case

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m = new Scanner(System.in);System.out.println("输入星期");String a = m.next();switch (a) {case "一":case "二":case "三":case "四":case "五":System.out.println("工作日");break;case "六":case "七":System.out.println("休息日");break;default:System.out.println("有误");break;}m.close();}
}输入星期
六
休息日

案例:统计数字(for循环)

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m = new Scanner(System.in);System.out.println("输入开始范围");int a = m.nextInt();System.out.println("输入结束范围");int b = m.nextInt();int sum=0;for (int i = a; i < b; i++) {if (i%3==0 && i%5==0){System.out.println(i);sum++;}}System.out.println("成立的个数"+sum);m.close();}
}输入开始范围
10
输入结束范围
60
15
30
45
成立的个数3

while循环语句(不知道循环的次数时)

int i=1;
while(i<5){System.out.println(i);i++;
}1
2
3
4  

案例:需要折叠的次数

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m = new Scanner(System.in);System.out.println("输入数字");Double a = m.nextDouble();             // 珠穆朗玛峰的高度Double b =0.1;                         // 纸张厚度int sum =0;                            // 折叠次数while (b<a){b=b*2;sum++;}System.out.println("需要折的次数"+sum);m.close();}
}输入数字
8844.3
需要折的次数17
package ko;import java.util.Scanner;public class d2 {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.println("输入高度");Double a=s.nextDouble();Double b=0.1;int sum=0;for (Double i = b; i < a; i=i*2) {sum++;}System.out.println("折叠次数"+sum);}
}输入高度
8844.3
折叠次数17

案例:回文数

package ko;import java.util.Scanner;public class d2 {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.println("输入数字");int m=s.nextInt();int sum=0;int ge=0;while (m!=0) {                         // 在不知道要循环多少次的时候用whilege=m%10;                           // ge位就是m/1%10,十位是m/10%10……m=m/10;                            // 用完一位后就消掉一位sum=sum*10+ge;                     // 按照位数进行求和}System.out.println(sum);s.close();}
}输入数字
123456789
987654321

案例:只用加减算整数乘除

package ko;import java.util.Scanner;public class d1 {public static void main(String[] args) {Scanner o=new Scanner(System.in);System.out.println("输入被除数");int dividend= o.nextInt();System.out.println("输入除数");int divisor=o.nextInt();int sum=0;while (dividend>=divisor){dividend-=divisor;sum++;}System.out.println("商为"+sum);System.out.println("余数为"+dividend);o.close();}
}输入被除数
80
输入除数
3
商为26
余数为2

continue(暂时终止--请假)跟break(彻底终止--辞职)

package ko;public class d3 {public static void main(String[] args) {for (int i = 1; i < 5; i++) {if(i==3){continue;                              // if括号里面的数为几就暂时不执行几}if(i==4){break;                                 // if括号中的数为几,就从该位置向后都不能执行}System.out.println("老虎吃了第"+i+"个包子");}}
}老虎吃了第1个包子
老虎吃了第2个包子

案例:逢七必过

package ko;public class d3 {public static void main(String[] args) {for (int i = 1; i < 80; i++) {if (i%10==7 || i/10%10==7 || i%7==0){System.out.print("过"+"\t");continue;}if (i%12==0){System.out.println();}System.out.print(i+"\t");}}
}1	2	3	4	5	6	过	8	9	10	11	
12	13	过	15	16	过	18	19	20	过	22	23	
24	25	26	过	过	29	30	31	32	33	34	过	
36	过	38	39	40	41	过	43	44	45	46	过	
48	过	50	51	52	53	54	55	过	过	58	59	
60	61	62	过	64	65	66	过	68	69	过	过	过	过	过	过	过	过	过	过

案例:求平方根

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m = new Scanner(System.in);System.out.println("输入数字");int a=m.nextInt();for (int i = 1; i <= a; i++) {if (i*i==a){                                 // 平方根能直接找到的方法System.out.println(i);break;} else if (i*i>a){                              // 平方根不能直接找到的方法System.out.println(i-1+"是平方根整数部分");break;}}m.close();}
}输入数字
60
7是平方根整数部分

案例:判断是否为质数

package ko;import java.util.Scanner;public class ko {public static void main(String[] args) {Scanner m = new Scanner(System.in);System.out.println("输入数字");int a=m.nextInt();int sum=0;for (int i = a; i <= a; i++) {for (int j = 2; j <a; j++) {if (i%j==0){sum++;System.out.println(sum);break;}}if(sum==0){System.out.println(a+"是一个质数");}else {System.out.println(a+"不是一个质数");}}m.close();}
}输入数字
10000
1
10000不是一个质数

案例:猜数字小游戏

package ko;import java.util.Random;public class d3 {public static void main(String[] args) {Random r =new Random();int R= r.nextInt(100)+1;                     // 表示从1开始,一直到100结束(包头不报尾)// int R= r.nextInt(100) ,默认从0开始到99结束System.out.println("随机数为:"+"\t"+R);}
}随机数为:	45                                       // 生成随机数            
package ko;import java.util.Random;
import java.util.Scanner;public class d3 {public static void main(String[] args) {Random r =new Random();int sum=0;int R= r.nextInt(100)+1;               // 1-100的随机数Scanner s=new Scanner(System.in);while (true){                          // 插入无限次循环,直至条件成立System.out.println("输入你猜的数字");int p=s.nextInt();if (p==R){System.out.println("恭喜你,猜对了");break;}if (p < R) {System.out.println("猜小了");}else {System.out.println("猜大了");}sum++;}System.out.println("一共猜了"+sum+"次");System.out.println("随机数"+R);}
}输入你猜的数字
50
猜小了
输入你猜的数字
80
猜小了
输入你猜的数字
90
猜小了
输入你猜的数字
95
猜大了
输入你猜的数字
94
恭喜你,猜对了
一共猜了4次
随机数94// 猜数字小游戏
package ko;import java.util.Random;
import java.util.Scanner;public class d3 {public static void main(String[] args) {Random r =new Random();int sum=0;int R= r.nextInt(100)+1;          // 1-100的随机数Scanner s=new Scanner(System.in);while (true){System.out.println("输入你猜的数字");int p=s.nextInt();if (p==R){System.out.println("恭喜你,猜对了");break;}if (p < R) {System.out.println("猜小了");}else {System.out.println("猜大了");}sum++;if (sum==3) {System.out.println("恭喜你答对了");break;}}System.out.println("随机数"+R);}
}80
猜大了
输入你猜的数字
90
猜大了
输入你猜的数字
80
猜大了
恭喜你答对了
随机数17// 猜了3次都没有猜中时会自动返回猜对了

快捷键:

ctrl+alt+L :快速格式化快捷键

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/878528.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

性能测试会被AI替代吗?

最近,deepseek火了,不少测试小伙伴忧心忡忡,担心测试岗位被替代 我个人观点是:经验类测试技术短期内还是很难被替代的。大家也可以问问deepseek或者其它ai,我们来看下deepseek的观点: 附文字版:性能测试是否会被AI替代,取决于具体的测试场景、技术发展阶段以及人类与…

Java Stream 流

目录概述StreamOptional开始管道中间管道(中间操作)终止管道(终端操作)常用的 Stream 操作方法匹配(Match)查找(Find)遍历(ForEach)过滤(Filter)映射(Map)扁平映射(FlatMap)截断(Limit)跳过(Skip)排序(Sorted)去重(Distinct)汇总(Collect)归约(Redu…

R9000P能连接wifi但无法上网

问题描述:前一晚还正常使用,第二天打开就不能上网,可以连接WiFi,切换过不同WiFi都一样,排除WiFi原因,此时浏览器显示找不到DNS,估计就是dns解析出了问题 解决办法:先去CMD下,输入ipconfig /flushdns 再控制面板->网络和Internet->找到下图,点击WLAN点击属性,双…

PCIe扫盲——TLP Header详解(二)

下面用几个具体的例子来讲解TLP Header的格式与作用。因为内容较多,所以分为多篇文章分别进行介绍。第一篇(即本文)介绍IO Request、Memory Request和Configuration Request。第二篇文章(即TLP Header详解三)介绍Completion ,第三篇文章(即TLP Header详解四)介绍Messag…

PCIe扫盲——TLP Header详解(一)

事务层包(TLP)的一般格式如下图所示:前面的文章介绍过,TLP Header为3DW或者4DW,Data Payload为1-1024DW,最后的TLP Digest(ECRC)是可选的,为1DW。 TLP Header在整个TLP的位置如下图所示,需要注意的是,TLP Header的格式和内容都会随着TLP的类型和路由方式的改变而改变…

龙哥量化:deepseek写技术指标,deepseek写选股公式,通达信deepseek写公式太牛了

龙哥微信:Long622889代写通达信技术指标、选股公式(通达信,同花顺,东方财富,大智慧,文华,博易,飞狐)代写期货量化策略(TB交易开拓者,文华8,金字塔) 2025的deepseek火出天际了,用来写技术指标,量化策略岂不是爽歪歪,哈哈 先说使用体验, 第一:写代码确实很强,…

这个记录一下,困扰了很久,usb网卡被隐藏。

这个问题困扰了很久,直到今天用了这个搜索。才发现问题,照做之后,usb网卡回来了。终于笔记本不用在连网线了,只连typtc扩展坞就可以了。没想到禁用之后,还被隐藏!!! 解决的链接。 https://blog.csdn.net/ljason1993/article/details/85884992

docker中提示permission denied

docker中使用mount命令报错:mount: permission denied使用docker exec -it dokcerID bash进入docker容器中,显示的是root,权限应该是足够,但是使用mount命令一直提示permission denie,很明显是权限不足造成的查看docker历史版本文档,发现docker在0.6之后引入了privileged…

使用Chainlit快速构建一个对话式人工智能应用体验DeepSeek-R1

Chainlit是一个开源的 Python 包,用于构建可用于生产的对话式人工智能。 DeepSeek-R1 是一款强化学习(RL)驱动的推理模型,解决了模型中的重复性和可读性问题。在 RL 之前,DeepSeek-R1 引入了冷启动数据,进一步优化了推理性能。它在数学、代码和推理任务中与 OpenAI-o1 表…

Mybatis-plus -2025/1/27

MyBatisPlus(简称MP)是基于MyBatis框架基础上开发的增强型工具,旨在简化开发、提高效率DQL编程控制 // 创建 LambdaQueryWrapper 对象,用于构建查询条件LambdaQueryWrapper<User> lqw = new LambdaQueryWrapper<>();// 1. 等值查询// 添加等于条件,查询 usern…

springboot -2025/1/26

配置文件优先级: application.properties > application.yml > application.yaml YAML格式 YAML(YAML Aint Markup Language),一种数据序列化格式。 优点:容易阅读 yaml 类型的配置文件比 xml 类型的配置文件更容易阅读,结构更加清晰容易与脚本语言交互以数据为…

manim边学边做--局部变换

本次介绍的两个用于变换的动画类:TransformMatchingShapes和TransformMatchingTex。 它们的主要特点是对一组对象或一段文本进行局部变换,适用于复杂的图形或者文本的变换场景。 其中:TransformMatchingShapes:用于不同形状的 VMobject 间转换,能自动匹配相似形状并创建平…