1.自动转换与强制转换:
(1).自动转换:容量小的数据可以自动转化容量大的(损失精度)
(2).强制转换:
System.out.println("######################"); double g = 3.99; int h = (int)g; System.out.println(h);//输出的是3而不是4,强制转化把他的小数点给去掉了,不是把他四舍五入
2.操作数的溢出问题:
public class day3 { public static void main(String[] args) { int money = 1000000000;//money在这设置的是10亿,不会溢出,int类型是+-21亿 int year = 20; int total; total = money * year; System.out.println(total);//控制台显示的是负数说明溢出了; long a; long b; a = money * year; System.out.println(a);//输出的数和上面的一样还是溢出,原因是这样的,就是money*year是int*int结果还是int在这个时候就会溢出了,在给long也没用了; b = (long)money * year;//这个时候就会是long*int输出的就是long就没问题了 System.out.println(b); } }
3.Scanner的用法:
import java.util.Scanner; public class TestScanner { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入你的名字:"); String name = scanner.nextLine(); System.out.println("请输入你的年龄:"); String age = scanner.nextLine(); System.out.println("#####################"); System.out.println(name); System.out.println(age); } }
4.Math.random()
package project01; /** * * 一个简单的掷色子的游戏 * @author wangtong * */ public class Tsetprogram01 { public static void main(String[] args) { double d = Math.random();//返回一个[0,1)的随机数注意开闭区间; int i = (int)(7 * Math.random()) ;//他*7的话就是[0,7)然后是强制转换成int 类型的那么小数点以后的就会被去掉就是[0,6]; int j = (int)(7 * Math.random()) ; int k = (int)(7 * Math.random()) ; int total = i + j + k; if(total > 12) { System.out.println("今天的手气极好。"); } if(total >= 6 && total <= 12) { System.out.println("今天的手气不错。"); } if(total < 6) { System.out.println("今天的手气真菜。"); } System.out.println("色子的总数是" + total);//注意这个地方要是要输出一个字符串和一个变量的数值 中间用加号链接; } }
5.Math.pow();//就是就幂运算
double r;
double CircleArea = Math.PI * Math.pow(r.2);//求圆的面积 ,第一个就是调用Math类的PI函数(就是一个常量PI的值),第二个就是r的2次幂;
注意: Math这个类中基本包含了我们初高中学的所有运算;
6.if - else if -...-else
注意:
前面的if 如果为真就执行里面的语句,那么其他的else if和 else就不会执行了;(不是所有的else if 都会执行);
7.多值判断:swith
public class TestSwith { public static void main(String[] args) { char letter = 'a'; int num = (int) (26 * Math.random()); char letter2 = (char) (letter + num); System.out.println(letter2 + ": "); switch(letter2){ case 'a': case 'e': case 'i': case 'o': case 'u'://是他们其中的一个都会输出是元音字母 System.out.println("这是一个元音字母。"); break;//break才是他结束的标志 default: System.out.println("这是一个辅音"); break; } } }
8.for循环的嵌套
99乘法表:
/** * 嵌套fer循环写99乘法表; * @author wang * */ public class forTest { public static void main(String[] args) { for(int i = 1; i <= 9; i++) { for(int j = 1; j <= i; j++ ) { System.out.print(j + "*" + i + "=" + j * i + '\t');//注意这个地方是print()而不是println()加ln的是自带换行功能的 } System.out.println(); } } }