菜鸡自学JAVA坎坷路day.3(包含一个掷色子游戏 和99乘法表)

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();
			}
				
		}
	

}


猜你喜欢

转载自blog.csdn.net/qq_38053395/article/details/80281751
今日推荐