本周进行了java的数据类型学习,注意对变量进行赋值时必须先定义变量类型
第一步:声明一个变量——根据类型在内存中开辟空间
第二步:赋值——将数据存入空间
第三步:使用变量——得到内存中的数据使用
我们使用变量前必须要先声明和赋值,声明和赋值可以分开,也可以结合为一步
成员变量在声明时如果没有为其显式赋值,则会为其分配一个默认值
变量的类型转换分为自动和强制,自动转换就是从低到高的过程,最终都可以转换为双精度浮点数类型,强制转换就好比将大瓶中的水倒入小瓶中,可能造成数据丢失,所以系统默认不支持这种行为,只能由开发者自己决定是否强制转换
常量是在程序中固定不变的值,是不能改变的数据
Java是一种强类型语言,所谓强类型,就是每个变量表达式在编译时就必须要有一个确定的数据类型。Java数据类型分为两大类:基本类型和引用类型。
引用数据类型为:类、接口、数组。
Java中的基本数据类型分为四类八种
package net.xsp.lesson03;
import java.text.DecimalFormat;
/**
-
功能:测试基本数据类型
-
作者:Stranger_top
-
日期:2019年3月14日
*/
public class TestDataTypes {
public static void main(String[] args) {
byte b = 127;
short s = 32767;
int i = 2147483647;
long l = 9223372036854775807L;
float f = 3.4028235E38f;
double d = 1.7976931348623157E308;
System.out.println(Integer.MAX_VALUE);
System.out.println(Long.MAX_VALUE);
System.out.println(Float.MAX_VALUE);
System.out.println(Double.MAX_VALUE);
char c1 = ‘a’;
char c2 = ‘A’;int c1asc = c1; int c2asc = c2; System.out.println(c1 + "的ASCII:" + c1asc); System.out.println(c2 + "的ASCII:" + c2asc); //转义字符 System.out.println("你喜欢Java吗?\n那还用说!\n为什么喜欢呀?\nJava排名第一!"); System.out.println("张三\t\t李二\t\t王五"); /// boolean b1 = true; boolean b2 = false; System.out.println("b1 = " + b1 + "\nb2 = " + b2); // final double PI = 3.1415926; double r = 2; double area = PI * r * r; System.out.println("area = " + area); System.out.println("area = " + String.format("%.2f", area)); double area1 = ((int) (area * 100 + 0.5)) / 100.0; System.out.println("area = " + area1); System.out.println("area = " + Math.round(area * 100) / 100.0); DecimalFormat df = new DecimalFormat("#.##"); System.out.println("area = " + df.format(area)); int x, y, z; x = y = z = 100; System.out.println("x = " + x + "\ny = " + y + "\nz = " + z);
}
}
package net.xsp.lesson03;
import java.util.Scanner;
/**
-
功能:计算成绩 计算三角形面积 求解方程
-
作者:Stranger_top
-
日期:2019年3月14日
*/
public class CalculateScore {
public static void main(String[] args) {
//计算成绩
// 声明部分
double stb, java, sql, diff, avg;
Scanner sc = new Scanner(System.in); // 扫描器对象//输入部分 System.out.print("stb = "); stb = sc.nextDouble(); System.out.print("java = "); java = sc.nextDouble(); System.out.print("sql = "); sql = sc.nextDouble(); // 处理部分 diff = sql - java; avg = (stb + java + sql) / 3; // 输出部分 System.out.println("sql与java的成绩差:" + diff); System.out.println("三个科目的平均成绩:" + String.format("%.2f", avg)); //计算三角形面积 Scanner scan = new Scanner(System.in); System.out.println("输入三角形的三边:"); System.out.print("请输入边a: "); int a = scan.nextByte(); System.out.print("请输入边b: "); int b = scan.nextByte(); System.out.print("请输入边c: "); int c = scan.nextByte(); float s = (a + b + c) / 2f; float S = (float) Math.sqrt(s * (s - a) * (s - b) * (s - c)); if (a + b > c && b + c > a && a + c > b) { System.out.println(S); } else { System.out.println("不构成三角形!"); } //求解一元二次方程的实数解 System.out.print("求ax^2+bx+c=0方程的实数解:"+"\n"); Scanner in=new Scanner(System.in); System.out.print("请输入a的值:"); int a1=in.nextInt(); System.out.print("请输入b的值:"); int b1=in.nextInt(); System.out.print("请输入c的值:"); int c1=in.nextInt(); double x1=((-b1+Math.sqrt(b1*b1-4*a1*c1))/(2*a1));//运用求根公式,并且Math.sqrt()为开平方根 double x2=((-b1-Math.sqrt(b1*b1-4*a1*c1))/(2*a1)); System.out.print("x1="+x1+"\n"+"x2="+x2);
}
}