&&和||和&和|的区别;
package cn.tedu.day01;
import java.awt.SystemColor;
/*
* 逻辑&&||&|
* & | ^ !
* &&||
* 0<x<10
*/
public class xx02 {
public static void main(String[] args){
int x=10;
int y=20;
int z=30;
System.out.println((x>y)&&(y>z));//false
System.out.println((x>y)||(y<z));//true
System.out.println((x > y)&(y > z));//false
System.out.println((x > y)|(y > z));//true
}
}
switch****语句
表达式的值:byte,short,int,char
JDK1.5之后,加入了枚举类型
JDK1.7之后,加入了String类型
break:中断switch语句的执行。
Default:所有的情况都不匹配的时候,就执行该处的语句块;
掌握switch语句的执行顺序。
package cn.tedu.day01;
import java.util.Scanner;
public class runnian {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入寧要查詢的年豐");
int a=sc.nextInt();
if(a%4==0){
if(a%4==0&&a%100!=0||a%400==0){
System.out.println("這一年是閏年!!!");
}else {
System.out.println("這一年不是閏年!!!");
}
}
}
}
(if else 语句)
package cn.tedu.day01;
import java.util.Scanner;
/*
* 王者榮耀段位;
* 程序考慮數據;
* 安全型數據;
* 邊界數據;
* 錯誤數據;
*/
public class IfElseIfDemo {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("请输入您的成绩");
int a=sc.nextInt();
if(a >= 90&&a <= 100){
System.out.println("最强王者");
}
else if(a >= 80&&a < 90){
System.out.println("星耀");
}
else if(a >= 70&&a < 80){
System.out.println("钻石");
}
else if(a >= 60&&a < 70){
System.out.println("黄金");
}
else if(a >= 0&&a < 60){
System.out.println("黑铁");
}
else {
System.out.println("输入成绩有误");
}
}
}
根据用户输入的年份,月份,判断该年该月有多少天。
package cn.tedu.day01;
import java.util.Scanner;
public class Switch {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.println("請輸入你的年份");
int a=sc.nextInt();
System.out.println("請輸入你的月份");
int b=sc.nextInt();
if(a%4==0){
if(a%4==0&&a%100!=0||a%400==0){
switch (b){
case 1:
System.out.println("這個月一共31天");
break;
case 2:
System.out.println("這個月一共29天");
break;
case 3:
System.out.println("這個月一共31天");
break;
case 4:
System.out.println("這個月一共30天");
break;
case 5:
System.out.println("這個月一共31天");
break;
case 6:
System.out.println("這個月一共30天");
break;
case 7:
System.out.println("這個月一共31天");
case 8:
System.out.println("這個月一共31天");
break;
case 9:
System.out.println("這個月一共30天");
break;
case 10:
System.out.println("這個月一共31天");
break;
case 11:
System.out.println("這個月一共30天");
break;
case 12:
System.out.println("這個月一共31天");
break;
default:
System.out.println("輸入有誤");
}
System.out.println("");
}else {
switch (b){
case 1:
System.out.println("這個月一共31天");
break;
case 2:
System.out.println("這個月一共28天");
break;
case 3:
System.out.println("這個月一共31天");
break;
case 4:
System.out.println("這個月一共30天");
break;
case 5:
System.out.println("這個月一共31天");
break;
case 6:
System.out.println("這個月一共30天");
break;
case 7:
System.out.println("這個月一共31天");
case 8:
System.out.println("這個月一共31天");
break;
case 9:
System.out.println("這個月一共30天");
break;
case 10:
System.out.println("這個月一共31天");
break;
case 11:
System.out.println("這個月一共30天");
break;
case 12:
System.out.println("這個月一共31天");
break;
default:
System.out.println("輸入有誤");
}
}
}
}
}
画神龟
package cn.tedu.day01;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import javax.swing.JPanel;
public class MyPanel extends JPanel{
//头的位置
int x=300;
int y=200;
//脚的初始位置
int k1=300,t1=200;//左上
int k2=300,t2=200;//右上
int k3=300,t3=200;//左下
int k4=300,t4=200;//右下
//Graphics
@Override
public void paint(Graphics g) {
// TODO Auto-generated method stub
super.paint(g);
this.setBackground(Color.cyan);
//画头部
g.setColor(Color.GREEN);
g.fillOval(x, y, 70, 100);
//加眼睛
g.setColor(Color.BLACK);
g.fillOval(x+10, y+30, 10, 15);
g.fillOval(x+50, y+30, 10, 15);
//加舌头
g.setColor(Color.RED);
g.fillOval(x+30, y, 8, 6);
//画脚 左上
g.setColor(Color.GRAY);
g.fillOval(k1-85, t1+75, 60, 70);
//右上
g.fillOval(k2+85, t2+75, 60, 70);
//左下
g.fillOval(k3-85, t3+235, 60, 70);
//右下
g.fillOval(k4+85, t4+235, 60, 70);
//加乌龟壳
g.setColor(Color.RED);
g.fillOval(x-66, y+66, 200, 230);
//壳加文字
g.setColor(Color.BLUE);
Font font= new Font(Font.DIALOG,Font.BOLD,30);
//Font font =new Font(Font.DIALOG,Font.BOLD,30);
g.setFont(font);
g.drawString("小龟龟", x-10, y+206);
/*
//给画笔设置颜色
g.setColor(Color.RED);
//画矩形
g.drawRect(20, 70, 400, 600);
//画实心
g.drawRect(120, 80, 150, 50);
g.setColor(Color.YELLOW);
//画圆和椭圆
g.drawOval(30, 250, 100, 100);
g.fillOval(130, 300, 100, 100);
//画奥迪
//画线段
g.drawLine(80, 80, 350, 350);
*/
}
}
package cn.tedu.day01;
import javax.swing.JFrame;
/*
* JFrame---窗体-----相框
* JFrame---画布----相片
* 导包:
* 1、手动导包 import...
* 2、自动导包 ctrl+shift+o
* 3、点击红色的叉号
*/
public class TurtlePro {
public static void main(String[] args){
//1、创建一个窗体对象
JFrame frame = new JFrame();
//2、给窗体添加标题
frame.setTitle("小龟龟");
//3、给窗体添加大小
frame.setSize(1400, 800);
//4、窗体居中显示
frame.setLocationRelativeTo(null);
//类名,静态常量, 减少内存占用
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
MyPanel tj=new MyPanel();
//添加画布到面板上
frame.add(tj);
//5、显示窗体
frame.setVisible(true);
}
}
**100到1000之间的水仙花数!
package cn.tedu.day01;
public class Forshuixianhua {
public static void main(String[] args){
System.out.println("100到1000之间的水仙花数!!!");
for(int x=100;x<1000;x++){
int a=x/100;
int b=(x/10)%10;
int c=x%10;
if(a*a*a+b*b*b+c*c*c==x){
System.out.println(x);
}
}
}
}
猜数字做游戏(while循环)
package cn.tedu.day01;
import java.util.Scanner;
/*
* while循环
* 猜的数字:int num=456;
*条件: int guess;
*while(guess!=num){
*猜数字;
*guess<num;猜小了
*
*}
*/
public class Caishuziyouxi {
public static void main(String[] args){
System.out.println("请输入你猜的数字");
Scanner sc=new Scanner(System.in);
int guess=sc.nextInt();
//int num=456;
//随机产生 Math.random() ----0.0-0.99999999...
//Math.random()*1000-----0.0-999.99999...
//(int)(Math.random()*1000---0-999
//(int)((Math.random()*1000)+1)----1-1000
int num =(int)((Math.random()*1000)+1);
while(guess!=num){
if(guess<num){
System.out.println("猜小了");
}else{
System.out.println("猜大了");
}
System.out.println("继续猜");
guess=sc.nextInt();
}
if(guess==num){
System.out.println("恭喜你猜对了!!!");
}
}
}
(do -----while )
package cn.tedu.day01;
import java.util.Scanner;
public class Do {
public static void main(String[] args){
System.out.println("请输入你猜的数字");
Scanner sc=new Scanner(System.in);
int guess=sc.nextInt();
int num =(int)((Math.random()*1000)+1);
do{
if(guess<num){
System.out.println("猜小了");
}else{
System.out.println("猜大了");
}
System.out.println("继续猜");
guess=sc.nextInt();
}while(guess!=num);
if(guess==num){
System.out.println("恭喜你猜对了!!!");
}
}
}
continue和break的区别:
continue:使用循环结构中,用于结束本次循环继续下一次循环。
package cn.tedu.day01;
public class day03 {
public static void main(String[] args){
for(int i=0;i<10;i++){
if(i%2==0){
continue;
}
System.out.println(i);
}
}
}
break:可以使用在switch结构和循环结构中,用于跳出当前结构。
package cn.tedu.day01;
public class day03breac {
public static void main(String[] args){
for(int i=0;i<10;i++){
if(i==2){
break;
}
System.out.println(i);
}
}
}
数组:
A:数组的概念:
数组式存储同一种数据类型多个元素的容器。
数组既可以存出基本数据类型,也可以存储引用数据类型。
B:数组的定义格式
格式一:数据类型[] 数组名;
格式二:数据类型 数组名[];
注意:这两个定义做完了,数组中是没有元素值得
数组的初始化
必须先初始化,后使用
初始化:数组中的数组元素进行分配内存空间
并为每一个数组元素进行赋值
两种:
1、动态初始化:初始化时,只指定数组的长度,由系统维数组分配初始值;
2、静态初始化:它已经指定了每一个数组元素的初始化的值
Java中的内存分配
栈:
存储的是局部变量:
局部变量就是定义在方法中的变量:
使用完毕之后被释放,立即回收;
堆:
存储在new出来的对象:实体:
每一个对象都有地址值;
每一个对象的数据都有默认值的;
byte,short,long—0
float,doublr--------0.0
char--------’\u0000’
boolean-----------false
引用类型--------null
使用完毕后,会在垃圾回收期空闲时,被回收
方法区:
本地方法区:(和系统有关)
寄存器:(给CPU使用的)
身份证的案例
package cn.tedu.day01;
import java.util.Scanner;
/*
* 数组的应用:
* 身份证的案例
*/
public class Shenfenzheng {
public static void main(String[] args) {
//身份证的前十七
int[] card=new int[17];
//一到十七位对应的系数
int data[]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
//身份证的最后一位系数
char[] code={'1','0','x','9','8','7','6','5','4','3','2'};
Scanner sc=new Scanner(System.in);
int sum=0;
for(int i=0;i<card.length;i++){
System.out.println("请输入身份证的前十七位:");
card[i] = sc.nextInt();
}
for(int i=0;i<card.length;i++){
sum+=card[i]*data[i];
}
System.out.println("最后一位:"+code[sum%11]);
}
}