Java基础案例

1.变量及基本数据类型

案例1:变量声明及赋值

            //1.变量的声明
		int a; //声明一个整型的变量a
		int b,c,d; //声明三个整型变量b,c,d

		//2.变量的初始化
		int a = 250; //声明整型变量a并赋值为250

		//声明整型变量b,然后赋值为250
		int b;
		b = 250;

		//3.变量的使用
		int a = 5;
		int b = b+10; //取出a的值5,加10后赋值给b
		System.out.println(b); //输出b的值15
		System.out.println("b");  //输出字符串b
		a=a+10;  //取出a的值5,加上10后再赋值给a
		System.out.println(a);  //15

		int c = 3.14; //编译错误,数据类型不匹配
		System.out.println(m);  //编译错误,m未声明

		int m;
		System.out.println(m);  //编译错误,m未初始化

		//4.变量的命名
		int a1,a_5$,$_;   //正确命名
		int a*b;   //编译错误,除了_和$,不能包含*等特殊符号
		int 1c;     //编译错误,不能以数字开头
		int static;   //编译错误,不能使用关键字
		int a = 6;
		System.out.println(A);   //编译错误,严格区分大小写
		int 年龄;   //正确,但不建议
		int age;    //正确,建议“见名知意
		int score,myScore,myJavaScore;   //正确,建议"驼峰命名法"

		//声明整型变量a并赋值为25.67
		int a = 25.67;   //编译错误,类型不匹配

案例2:数据类型转换

          //1.int整型
		int a = 3000000000;   //编译错误,30亿超出int范围
		System.out.println(5/2);  //2  整数直接量默认为int,两个int运算得到的还是int型,小数位无条件舍弃
		System.out.println(2/5);  //0
		System.out.println(5/2.0);  //2.5  发生自动类型转换,int转换为double

		int c = 2147483647;  //int范围最大值
		c +=1;
		System.out.println(c);  //-2147483648 发生溢出,溢出是需要避免的

		//2.long长整型
		long a = 10000000000;  //编译错误,100亿默认为int型,但超范围了
		long b = 10000000000L;  //100亿L为长整型直接量

		long c = 10000000*2*10L;
		System.out.println(c);  //200亿

		long d = 10000000*3*10L;
		System.out.println(d);  //发生溢出,10亿*3默认是int型,但是30亿已超出int范围

		long e = 100000000L*3*10;
		System.out.println(e);  //300亿,在计算有可能发生溢出的时候建议第一个数加上L

		long f = System.currentTimeMillis();  //从1970.1.1零时到现在的毫秒数是long型

		//3.double浮点型
		double pi = 3.14;  //3.14为浮点数直接量,默认为double型
		float pi = 3.14F;
		double a=6.0,b=4.9;
		System.out.println(a);  //1.0999999999999996,舍入误差,精确计算不建议double

  

2.运算符

案例1:运算符的演示

public class Test {
	public static void main(String[] args){
		int a = 2, b = 7, c=5;
		System.out.println(a++);  //2
		System.out.println(a);    //3
		System.out.println(++b);  //8
		/*
		 * 当变量参与运算时,++x,先自加再运算
		 * 当变量参与运算时,x++,先运算在自加
		 */
		c = c++;
		/*
		 * 运算顺序:
		 * 1.c取出自己内存的值5
		 * 2.进行自加c变成6
		 * 3.c++参与运算时的整体值是5
		 * 4.然后将(c++)整体值赋值给c
		 * 5.c的值又变成5
		 */
		System.out.println(c);  //5
	}
}

  

案例2:字符串连接

public class Test {
	public static void main(String[] args) {
		int a =1, b = 2;
		String o = "qwer";
		String P = a+b+o+a+b;
		/*
		 *任何类型与字符串类型拼接,得到的依然是字符串类型
		 *计算顺序:
		 *1.先计算a+b,两个int相加得到int,结果为3
		 *2.再+o为字符串,得到字符串3qwer
		 *3再+a+b,得到的依然是字符串,结果为3qwer12
		 */
		System.out.println(P);  //3qwer12
	}
}

  

案例3:三目运算输出三个数的最大值

ublic class Test {
	public static void main(String[] args) {
		int a = 50, b = 90, c = 20;
		int max = (a>b?a:b)>c?(a>b?a:b):c;
		System.out.println(max);
	}
}

案例4:逻辑运算符演示

public class Test {
	public static void main(String[] args) {
		int a = 1;
		int b = 2;
		boolean c = a>1 && ++a>1;
		boolean d = a++>1 || b--<2;
		boolean e = a<1 || ++b==3;
		System.out.println(a);
		System.out.println(b);
		System.out.println(c);
		System.out.println(d);
		System.out.println(e);
	}
}

/*
2
2
false
false
false
*/

3.分支结构

案例1:判断某一年的某一月是多少天

 1 import java.util.Scanner;
 2
 3 public class Test {
 4     public static void main(String[] args) {
 5         //用户输入数值
 6         Scanner scan = new Scanner(System.in);
 7         System.out.print("请输入查询的年份:");
 8         int year = scan.nextInt();
 9         System.out.print("请输入查询的月份:");
10         int month = scan.nextInt();
11         int days;  //用于记录天数
12         switch(month){
13         case 2:
14             if(year%400==0 || (year%4==0&&year%100!=0)){
15                 days = 29;
16                 break;
17             }else{
18                 days = 28;
19                 break;
20             }
21         case 4:
22         case 6:
23         case 9:
24         case 11:
25             days = 30;
26             break;
27         default:
28             days = 31;
29             break;
30         }
31         System.out.println(year+"年的"+month+"月有"+days+"天");
32     }
33 }

4.循环结构

案例1:打印99乘法表

public class Test {
	public static void main(String[] args) {
		for(int i=1;i<10;i++){
			for(int j=1;j<=i;j++){
				System.out.print(j+"*"+i+"="+j*i+"\t");
			}
			System.out.println();
		}
	}
}

案例2:输入一个int整数,算出这个整数每个数字的和

比如输入321,则输出3+2+1=6

 1 import java.util.Arrays;
 2 /*
 3 1.  3212/10=321...2
 4 2.  321/10=21....1
 5 3.  21/10=2....1
 6 4.  2/10=0....0
 7 规律:a/10最后结果为0的时候停止循环,即数字<10
 8 所以当a每次除10之后的数字>0的时候循环
 9  */
10 import java.util.Scanner;
11
12 public class Test {
13     public static void main(String[] args) {
14         System.out.print("输入一个整数:");
15         Scanner scan = new Scanner(System.in);
16         String input = scan.nextLine();
17         int num = Integer.parseInt(input);  //将输入的字符串转化为数字
18         int sum = 0; //用于记录每个数的和
19         char[] arr = input.toCharArray();   //将输入的字符串转换为字符数组
20         while(true){
21             sum += num%10;
22             if(num<10){
23                 break;
24             }
25             num /= 10;
26         }
27         for(int i=0;i<arr.length-1;i++){
28             System.out.print(arr[i]+"+");
29         }
30         System.out.print(arr[arr.length-1]);
31         System.out.println("="+sum);
32     }
33 }

5.数组

6.方法

时间: 2024-10-14 20:39:18

Java基础案例的相关文章

No_16_0221 Java基础学习第二天

文档版本 开发工具 测试平台 工程名字 日期 作者 备注 V1.0 2016.02.21 lutianfei none 第二章 Java基础语法(一)关键字(二)标识符1.常见命名规则(三)注释(四)常量原码.反码.补码有符号数据表示法(五)变量数据类型的默认转换数据类型的强制转换面试题1面试题2练习题1 byte b = 300:练习题2,写出下列程序结果 第二章 Java基础语法 本章内容 关键字 标识符 注释 常量.进制和进制转换 变量 数据类型和类型转换 运算符 语句 (一)关键字 关键

ADF Faces 表格应用基础案例二:动态字段+事件处理【附样例工程】

本文提供一个基于ADF Face组件开发样例工程,实现表格开发中常见的处理: 1.Map对象+Bean对象填充表格的数据行. 2.使用静态列.动态列.嵌套列的实现方法. 3.介绍表格中表单组件的使用方法. 4.介绍表格单行选中事件的处理过程. 本文是基于"ADF Faces 表格应用基础案例一:应用List<Class>填充文本表格"编写的,会省去许多细节部分的介绍. 实现的基本思路: 将样例工程的创建过程分为几个小的阶段,每个阶段实现了不同的目标. 第一阶段: 表格数据:

Java基础Day2

Java基础第二天 2.1回顾 第一个代码: /** 这是我的第一个java程序 @author zhang @version v1.0 */ publicclass HelloJava{ /* 1.源文件以.java结尾 2.源文件中可以有多个class声明的类 3.类中可以有主方法(即main()方法),其格式是固定的:public static void main(String[]args){} 4.main()方法是程序的入口,方法内是程序的执行部分. 5.一个源文件中只能有一个声明为p

程序设计C语言二级考试教程 Java基础视频教程 安卓软件开发教程 Unity3D游戏制作入门教程

热门推荐电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 Excel函数应用教程 Excel VBA基础教程 WPS2013表格教程 更多>平面设计PhotoshopCS5教程 CorelDRAW X5视频教程 Photoshop商业修图教程 Illustrator CS6视频教程 更多>室内设计3Dsmax2012教程 效果图实例提高教程 室内设计实战教程 欧式效果图制作实例教程 AutoCAD2014室内设计 Aut

[Java基础] Java线程复习笔记

先说说线程和进程,现代操作系统几乎无一例外地采用进程的概念,进程之间基本上可以认为是相互独立的,共享的资源非常少.线程可以认为是轻量级的进 程,充分地利用线程可以使得同一个进程中执行多种任务.Java是第一个在语言层面就支持线程操作的主流编程语言.和进程类似,线程也是各自独立的,有自 己的栈,自己的局部变量,自己的程序执行并行路径,但线程的独立性又没有进程那么强,它们共享内存,文件资源,以及其他进程层面的状态等.同一个进程内的 多个线程共享同样的内存空间,这也就意味着这些线程可以访问同样的变量和

Java基础Day1

Java基础第一天 1.1基础常识 1. 软件开发 软件,即一系列按照特定顺序组织的计算机数据和指令的集合.有系统软件和应用软件之分.    系统软件:系统软件系统软件是负责管理计算机系统中各种独立的硬件,使得它们可以协调工作.系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的.比如我们讲的window,linux,mac系统    应用软件:应用软件应用软件是为了某种特定的用途而被开发的软件.它可以是一个特定的程序,比如一个图像浏览器.也可以是一组功能

Java基础面向对象

Java基础第七天 面向对象思想 类与对象及其使用 对象的内存图 成员变量和局部变量的区别 匿名对象 封装(private) this关键字 构造方法 static关键字 面向对象思想引入 前面我们讲过数组,当有多个数组都需要遍历时,我们可以将遍历的代码封装到方法中,需要遍历时,就调用相应的方法即可,提高代码的复用性.在对数组遍历的基础上继续增加需求,比如获取最值,数值逆序等,同样需要将这些功能封装到相应的方法中.这样继续封装会发现方法越来越多,于是就想能不能将这些方法继续进行封装呢?通过前面的

Java基础Day6

Java基础第六天 数组 数组概述 需求:现在需要统计某公司员工的工资情况,例如计算平均工资.找到最高工资等.假设该公司有80名员工,用前面所学的知识,程序首先需要声明80个变量来分别记住每位员工的工资,然后在进行操作,这样做会显得很麻烦.为了解决这种问题,Java就提供了数组供我们使用. 那么数组到底是什么呢?有什么特点呢?通过上面的分析:我们可以得到如下两句话: 数组是存储多个变量(元素)的东西(容器) 这多个变量的数据类型要一致 数组概念 数组是存储同一种数据类型多个元素的集合.也可以看成

Java基础Day5

Java基础第五天 方法 方法概述 假设有一个游戏程序,程序在运行过程中,要不断地发射炮弹(植物大战僵尸).发射炮弹的动作需要编写100行的代码,在每次实现发射炮弹的地方都需要重复地编写这100行代码,这样程序会变得很臃肿,可读性也非常差.为了解决代码重复编写的问题,可以将发射炮弹的代码提取出来放在一个{}中,并为这段代码起个名字,这样在每次发射炮弹的地方通过这个名字来调用发射炮弹的代码就可以了.上述过程中,所提取出来的代码可以被看作是程序中定义的一个方法,程序在需要发射炮弹时调用该方法即可.