1.方法及其格式
方法是用于执行特定任务或者操作的代码块,可以接受数据进行处理并返回一个处理的结果。
public static int getSum(int a, int b) { //修饰符 返回值类型 方法名 (形参列表){ int sum = a + b; //方法体代码(需要执行的功能代码) return sum; //return 返回值; }如果没有返回值就用void 如最常见的public static void main
tips: ① 方法可以重载,即方法的名称相同,但形参不同
②在无返回值的方法中单独使用return,提前结束方法。
2.类型转换
自动类型转换:类型范围小的可以直接赋值给类型范围大的。
强制类型转换:类型 变量=(类型) 变量1; 可能会出现数据溢出
如int i 要调用public static void print(byte j)这个方法,但是int比byte范围大,可以用byte j=(byte) i将i强制转换成范围小的。 浮点型转整型直接丢掉小数。
表达式的自动类型转换:
byte、short、char->int->long->float->double在表达式中,byte\short\char直接转换为int进行运算
3.输入输出
输出:System.out.println("Hello World!");
输入:程序读取用户键入的数据。用java提供的Scanner程序来实现
API:应用程序编程接口,Java写好的程序
4.运算符
基本运算符:+ - * / %(取余)
自增自减:++ --
int a=10; int b=a++; //b=10,a=11; int a=10; int c=++a; //a=c=11;赋值运算符:
三元运算符:条件表达式?值1:值2; 即判断条件,满足条件返回1,不满足返回2
如果是三个值比较呢?
方法一:
int max=a>b?a:b; max=max>c?max:c;方法二:
int max=a>b?a>c?a:c:b>c?b:c; //拆解一下就是int max=a>b?(a>c?a:c):(b>c?b:c);逻辑运算符:
& 与运算符 多个条件都是true才是true
| 或运算符 有一个为true就是true
! 逻辑非 就是否的意思,例如 !true就是false
^ 逻辑异或 前后条件结果相同就返回false 否则返回true 就是同为假,异为真
&& 短路与 左边如果为false右边不执行
|| 短路或 左边为true右边不执行
快捷scanner写法:
new Scanner(System.in).var5.程序流程控制
if分支 仅示例,太简单不赘述了
if(score>=90 && score<=100){ System.out.println("A+"); } else if(score>=80 && score<90){ System.out.println("A"); } else if(score>=70 && score<80){ System.out.println("B"); } else if(score>=60 && score<70){ System.out.println("C"); } else if (score>=0 && score<60){ System.out.println("D"); } else { System.out.println("输入的分数有误"); }switch分支依旧示例不赘述
switch (sex){ case "男": System.out.println("推荐《java从入门到精通》"); break; case "女": System.out.println("推荐《java从入门到精通》"); break; default: System.out.println("请重新输入"); }if适合大部分情况,switch适合一个一个值比较,if适合区间。
switch注意事项:
1.switch表达式类型只能是byte\short\int\char,JDK7开始支持string
2.case给出的值不允许重复,只能是字面量,不能是变量。
3.正常使用switch的时候,不用忘记break,否则会出现穿透现象。相同程序的case块可以不设置break,直接穿透。
for循环
for (int i = 0; i < 3; i++) { System.out.print("Hello World!\n"); }while循环
int i=1; while(i<=5){ System.out.println("hello world"); i++; }do.while循环
int i=1; do{ System.out.println("HelloWorld"); i++; }while (i<=3);do先执行,然后再判断while是否符合。 //那do真是有点笨笨嘟喽。
循环嵌套
public static void test1(){ for(int i=1;i<=3;i++){ for(int j=1;j<=5;j++){ System.out.print("Hello World!"); } System.out.println(); } }break\contine
break跳出并结束当前循环,contine跳出当前循环进入下一次循环。