黑马程序员技术交流社区
标题: 安卓基础第十一天笔记(4) [打印本页]
作者: 清风幕竹 时间: 2016-5-24 13:08
标题: 安卓基础第十一天笔记(4)
###10.22_常见对象(Scanner获取数据出现的小问题及解决方案)(掌握)
* A:两个常用的方法:
* public int nextInt():获取一个int类型的值
* public String nextLine():获取一个String类型的值
* B:案例演示
* a:先演示获取多个int值,多个String值的情况
* b:再演示先获取int值,然后获取String值出现问题
* c:问题解决方案
* 第一种:先获取一个数值后,在创建一个新的键盘录入对象获取字符串。
* 第二种:把所有的数据都先按照字符串获取,然后要什么,你就对应的转换为什么。(后面讲)
案例:
package com.itheima.scanner;
import java.util.Scanner;
public class Demo2_Scanner {
/**
* @param args
*/
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
/*//第一个小操作
System.out.println("请输入第一个整数:");
int i = sc.nextInt();
System.out.println("请输入第二个整数:");
int j = sc.nextInt();
System.out.println("i = "+i+", j = "+j);*/
/*//第二个小操作
System.out.println("请输入第一个字符串:");
String line1 = sc.nextLine();
System.out.println("请输入第二个字符串:");
String line2 = sc.nextLine();
System.out.println("line1 = "+line1+", line2 = "+line2);*/
//第三个小操作
//如果输入10回车,没有输入第二个字符串就已经输出结果:i = 10, line2 =
/*
* nextInt()是键盘录入整数的方法,当我们录入10的时候
* 其实在键盘上录入的是10和\r\n,nextInt()方法只获取10就结束了
* nextLine()是键盘录入字符串的方法,可以接收任意类型,但是他凭什么能获取一行呢?
* 通过\r\n,只要遇到\r\n就证明一行结束,nextLine()遇到\r\n就结束了
*/
/*System.out.println("请输入第一个整数:");
int i = sc.nextInt();
System.out.println("请输入第二个字符串:");
String line2 = sc.nextLine();
System.out.println("i = "+i+", line2 = "+line2);
//为了证明line2中并没有存放\r\n,因为nextLine()遇到\r\n就结束了,所以不会存入line2中
System.out.println(i);
System.out.print("111111111111");
System.out.print(line2);
System.out.println("22222222222");*/
//解决上面的问题,方案1:再创建一个Scanner,但是浪费空间
//方案2:因为键盘录入的都是字符串,所以都用nextLine()方法,然后再进行转换
int i = sc.nextInt();
Scanner sc2 = new Scanner(System.in);
String line = sc.nextLine();
System.out.println(i);
System.out.println(line);
}
}
###10.23_常见对象(Math类概述和方法使用)
* A:Math类概述
* Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
* B:成员方法
* public static int abs(int a)// 绝对值
* public static double ceil(double a)// 天花板
* public static double floor(double a)//地板
* public static int max(int a,int b) min自学//最大值
* public static double pow(double a,double b)//a的b次方
* public static double random()//0.0~0.1 [)之间的随机数
* public static int round(float a) 参数为double的自学//四舍五入
* public static double sqrt(double a)//平方根
案例:
package com.heima.otherclass;
public class Demo1_Math {
public static void main(String[] args) {
System.out.println(Math.PI);
System.out.println(Math.abs(-10)); //取绝对值
//ceil天花板
/*
* 13.0
* 12.3
* 12.0
*/
System.out.println(Math.ceil(12.3)); //向上取整,但是结果是一个double
System.out.println(Math.ceil(12.99));
System.out.println("-----------");
//floor地板
/*
* 13.0
* 12.3
* 12.0
*/
System.out.println(Math.floor(12.3)); //向下取整,但是结果是一个double
System.out.println(Math.floor(12.99));
//获取两个值中的最大值
System.out.println(Math.max(20, 30));
//前面的数是底数,后面的数是指数
System.out.println(Math.pow(2, 3)); //2.0 ^ 3.0
//生成0.0到1.0之间的所以小数,包括0.0,不包括1.0
System.out.println(Math.random());
//四舍五入
System.out.println(Math.round(12.3f));
System.out.println(Math.round(12.9f));
//开平方
System.out.println(Math.sqrt(4));
System.out.println(Math.sqrt(2));
System.out.println(Math.sqrt(3));
}
}
###10.24_常见对象(Random类的概述和方法使用)
* A:Random类的概述
* 此类用于产生随机数如果用相同的种子创建两个 Random 实例,
* 则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。
* B:构造方法
* public Random()
* public Random(long seed)
* C:成员方法
* public int nextInt()
* public int nextInt(int n)(重点掌握)
案例:
package com.heima.otherclass;
import java.util.Random;
public class Demo2_Random {
public static void main(String[] args) {
Random r = new Random();
/*int x = r.nextInt();
System.out.println(x);*/
for(int i = 0; i < 10; i++) {
//System.out.println(r.nextInt());
System.out.println(r.nextInt(100)); //要求掌握,生成在0到n范围内的随机数,包含0不包含n
}
/*
* -1244746321
1060493871
-1244746321
1060493871
*/
/*Random r2 = new Random(1001);
int a = r2.nextInt();
int b = r2.nextInt();
System.out.println(a);
System.out.println(b);*/
}
}
作者: liucuifu 时间: 2016-5-24 13:33
good!!!!!!!!!!!!1
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |