zoukankan      html  css  js  c++  java
  • Java初级相应习题

    求1~99之间的和
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    int i=1;
    int sum=0;
    do {
    sum+=i;
    i=i+2;
    }
    while(i<=100);
    System.out.println("1+3+5+……+99="+sum);
    
    }
    View Code

     

    判断输入月份是什么季节

    public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner in = new Scanner(System.in);
            int type = in.nextInt();
            switch(type) {
            case 3:
            case 4:
            case 5:
                System.out.println("春");
                break;
            case 6:
            case 7:
            case 8:
                System.out.println("夏");
                break;
            case 9:
            case 10:
            case 11:
                System.out.println("秋");
                break;
            case 12:
            case 1:
            case 2:
                System.out.println("冬");
                break;
            default:
                System.out.println("请输入正确月份");
                break;
                    
            }
            
    
        }
    View Code

    输入W、A、X、D、判断上下左右

    public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner in = new Scanner(System.in);
            String string = in.nextLine();
            char ch = string.charAt(0);
            System.out.println(ch);
            switch(ch) {
            case 'w':
            case 'W':
                System.out.println("上");
                break;
            case 'x':
            case 'X':
                System.out.println("下");
                break;
            case 'a':
            case 'A':
                System.out.println("左");
                break;
            case 'd':
            case 'D':
                System.out.println("右");
                break;
            default:
                System.out.println("请输入正确字符");
                break;
                    
            }
            
    View Code

    推箱子

    package n.txz;
    
    import java.awt.Frame;
    import java.awt.event.KeyEvent;
    import java.awt.event.KeyListener;
    
    import javax.swing.Icon;
    import javax.swing.ImageIcon;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    
    //用作显示的主窗体
    //需要继承Frame类————继承
    //出现红色波浪线代表出现了错误,前方有一个红色叉
    public class MainFrame extends JFrame implements KeyListener{
        //1.最起码应该设置一下窗口最基本的信息
        //1.1窗口是否显示
        //构造方法
        public MainFrame(){
            //由于添加图片组件的时候存在顺序,因此要根据需要调整
            //添加图片组件的顺序
            //背景图片由于其是最大的图片,因此最后添加,其他内容
            //都要在背景图片之前添加
            
            //添加各种各样要显示的东西.....
            
            //做笼子(目标位置)
            targetInit();
            //做灰太狼(人物)
            wolfInit();
            //做懒洋洋(箱子)
            sheepInit();
            //做树木(障碍)
            treeInit();
            //制作一个背景,并将背景添加到窗体中
            backgroundInit();
            //设置整个窗体
            setMainFrameUI();
            //使窗口能够监督用户是不是点了键盘
            this.addKeyListener(this);
        }
        JLabel [][]sheeps = new JLabel[12][16];
        //场景数据的模拟,使用二维数组模拟
        //1代表障碍,0代表空地
        //4代表箱子
        int[][] datas = {
            {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,1,1,1,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,1,1,1,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,1,1,1,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
            {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
            {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
        };
        //代表人物横向的位置
        int wx ;
        //代表人物纵向的位置
        int wy ;
        //
        int num=0;
        //代表箱子总数
        int total=3;
        //推箱子障碍的初始化
        private void treeInit(){
            //1.创建图片
            Icon ic = new ImageIcon("tree.png");
            //遍历二维数组
            for(int i = 0;i<datas.length;i++){
                for(int j = 0;j<datas[i].length;j++){
                    //判断一下原始数据里面的值如果是1,做障碍
                    if(datas[i][j] == 1){
                        //障碍的初始化
                        //2.创建JLabel
                        JLabel lab_tree = new JLabel(ic);
                        //3.设置大小位置
                        lab_tree.setBounds(12+50*j,36+50*i,50,50);                           
                        //4.添加到窗体中
                        this.add(lab_tree);
                    }
                }
            }
        }
        
        
        //推箱子目标的初始化
        private void targetInit() {
            //制作目标方式同人物或者箱子的制作
            //1.创建图片
            Icon i = new ImageIcon("target.png");
            //2.Jable
            JLabel lab_target1 = new JLabel(i);
            //3.设位置
            lab_target1.setBounds(712, 236, 50, 50);
            //4.添加进窗体
            this.add(lab_target1);
            
            //制作其他两个笼子
            JLabel lab_target2 = new JLabel(i);
            lab_target2.setBounds(712, 286, 50, 50);
            this.add(lab_target2);
            
            JLabel lab_target3 = new JLabel(i);
            lab_target3.setBounds(712, 336, 50, 50);
            this.add(lab_target3);
            
        }
    
        //推箱子箱子的初始化
        private void sheepInit(){
            Icon i = new ImageIcon("sheep-no.png");
            //2.使用JLabel组件模拟箱子
            JLabel lab_sheep1 = new JLabel(i);
            //3.设置箱子的位置
            lab_sheep1.setBounds(12+6*50, 36+4*50, 50, 50);
            //4.把箱子添加到窗体中
            this.add(lab_sheep1);
            //修改箱子对应位置上的数据为4
            datas[4][6] = 4;
            sheeps[4][6] = lab_sheep1;
            
            //制作第二只羊,图片不需要制作了
            //第二只羊制作时,只需要修改对应的显示位置就行了
            JLabel lab_sheep2 = new JLabel(i);
            lab_sheep2.setBounds(312, 336, 50, 50);    
            this.add(lab_sheep2);
            datas[6][6] = 4;
            sheeps[6][6] = lab_sheep2;
            //制作第三只羊,图片不需要制作了
            //第三只羊制作时,只需要修改对应的显示位置就行了
            JLabel lab_sheep3 = new JLabel(i);
            lab_sheep3.setBounds(312, 436, 50, 50);    
            this.add(lab_sheep3);
            datas[8][6] = 4;
            sheeps[8][6] = lab_sheep3;
        }
        
        //推箱子人物的初始化
        private void wolfInit() {
            //人物最初位置在哪里?
            wx = 4 ;
            wy = 5 ;
            
            //使用一张图片来模拟人物
            //1.创建一张图片,人物图片
            Icon i = new ImageIcon("wolf.png");
            //2.使用JLabel组件模拟人物
            lab_wolf = new JLabel(i);
            //3.设置人物在屏幕上的显示位置
            //人物的显示位置放置在何处较为合理?----------------
            lab_wolf.setBounds(12 + wx*50, 36 + wy*50, 50, 50);
            //4.把这个人物放到窗体里面
            this.add(lab_wolf);
        }
        JLabel lab_wolf;
        //背景初始化
        private void backgroundInit() {
            //背景是如何实现的?如何做背景?
            //想使用图片作为JLabel内部显示的内容
            //创建一个图片
            Icon i = new ImageIcon("bg.png");
            //使用JLabel制作背景
            JLabel lab_bg = new JLabel(i);
            //设置要添加的组件的位置与大小
            lab_bg.setBounds(12, 36, 800, 600);
            //将这个东西添加到窗体里面
            this.add(lab_bg);
        }
        //设置主窗体界面显示效果
        private void setMainFrameUI(){
            //设置整个窗体的布局模式为自由布局
            this.setLayout(null);
            //设置窗口的标题
            this.setTitle("推箱子 v1.0 - java.itcast.cn");
            //设置窗口的位置
            this.setLocation(110, 30);
            //设置窗口尺寸,多长400,多宽300
            this.setSize(826,650);
            //设置窗口不能最大化
            //this.setResizable(false);
            //设置窗口显示出来
            this.setVisible(true);
        }
        
        public void keyReleased(KeyEvent e) {
            //点击键盘后现在程序有动作执行了
            //如何分辨用户点击的是键盘上的某个按键?
            //通过键码值分辨是哪一个按键
            //获取键码值的方式:
            //key代表了你输入的是哪个按键
            //左 37
            //上 38
            //右 39
            //下 40
            int key = e.getKeyCode();
            if(key == 39){
                //让人物向右移动
                //一定要知道移动的位置前面有没有障碍
                //如果没有障碍移动
                //如果有障碍,什么事情都不做
                //碰撞检测之人物遇到障碍
    //        if (datas[wy][wx+1]==0 ) {
    //            wx = wx+1;
    //            int x =(int)lab_wolf.getLocation().getX();
    //            int y =(int)lab_wolf.getLocation().getY();
    //            lab_wolf.setLocation(x+50, y);
    //            Icon i = new ImageIcon("wolf-ym.png");
    //            lab_wolf.setIcon(i);
    //                  return;
    //            }
    //            
    //        if(datas[wy][wx+1] == 1){
    //                return;
    //            }
    //            
    //        if (datas[wy][wx+1]==4 && datas[wy][wx+2]==1) {
    //                return;
    //            }
    //        if (datas[wy][wx+1]==4 && datas[wy][wx+2]==4) {
    //                return;
    //            }
    //        if (datas[wy][wx+1]==4 && datas[wy][wx+2]==12) {
    //                return;
    //            }  
    //        if (datas[wy][wx+1]==12 && datas[wy][wx+2]==1) {
    //                return;
    //            }
    //        if (datas[wy][wx+1]==12 && datas[wy][wx+2]==4) {
    //                return;
    //            }
    //       if (datas[wy][wx+1]==12 && datas[wy][wx+2]==12) {
    //                return;
    //            }
        
    //     if (datas[wy][wx+1]==8 ) {
    //           wx = wx+1;
    //           int x =(int)lab_wolf.getLocation().getX();
    //           int y =(int)lab_wolf.getLocation().getY();
    //           lab_wolf.setLocation(x+50, y);
    //           Icon i = new ImageIcon("wolf-ym.png");
    //           lab_wolf.setIcon(i);
    //            return;
        //    }
            
    //     if (datas[wy][wx+1]==4 (4)&& datas[wy][wx+2]==0(8) {
    //           datas[wy][wx+1]=0;
    //           datas[wy][wx+1]=4;
    //            }
    //        if (datas[wy][wx+1]==12 && datas[wy][wx+2]==0) {
    //            datas[wy][wx+1]=0;
    //            datas[wy][wx+1]=12;
    //            num++;
    //            }
    //        if (datas[wy][wx+1]==12 && datas[wy][wx+2]==0) {
    //        datas[wy][wx+1]=8;
    //        datas[wy][wx+1]=4;
                num--;
    //            }
        //    if (datas[wy][wx+1]==12 && datas[wy][wx+2]==8) {
    //            datas[wy][wx+1]=8;
    //            datas[wy][wx+1]=12;
                
    //                }
            
            
    //        sheeps[wy][wx+1].setLocation(12+wx*50+100,36+wy*50);
    //        sheeps[wy][wx+2]=sheeps[wy][wx+1];
    //        sheeps[wy][wx+1] = null;
    //        
    //        wx = wx+1;
    //        int x =(int)lab_wolf.getLocation().getX();
    //        int y =(int)lab_wolf.getLocation().getY();
    //        lab_wolf.setLocation(x+50, y);
    //        Icon i = new ImageIcon("wolf-ym.png");
    //        lab_wolf.setIcon(i);
    //    }
                
                if(datas[wy][wx+1] == 1){
                    //所谓什么事情都不做就是不让下面的代码执行
                    return;
                }
                //碰撞检测之人物遇到箱子
                if(datas[wy][wx+1] == 4){
                    
                    //遇到了箱子
                    //如果遇到了箱子
                if(datas[wy][wx+2]!=1 && datas[wy][wx+2]!=4) {
                    if(datas[wy][wx+2]==8) {
                        num++;
                        System.out.println(num);
                    }
    
                    //箱子在方向上移动一格
                    //1.箱子的实际数据4的位置要发生变化
                    //当前箱子所在的位置值变成0
                    datas[wy][wx+1] = 0;
                    //移动以后箱子所在的位置值变成4
                    datas[wy][wx+2] = 4;
                    //2.箱子的显示位置也要发生变化
                    //所谓箱子模型的移动其实和人物的移动是一样的
                    //就是改变箱子的坐标
                    //改变箱子的坐标是使用箱子对象调用改变坐标的方法
                    //只要能够获取到箱子对象和计算出要移动的坐标就OK了
                    //箱子.setLocation(坐标,坐标);
                    //箱子一定要使用你要移动的那个箱子
                    sheeps[wy][wx+1].setLocation(12+wx*50+100,36+wy*50);
                    sheeps[wy][wx+2]=sheeps[wy][wx+1];
                    sheeps[wy][wx+1] = null;
                }
                    //人物在方向上移动一格
                    //-------人物移动代码开始----------
                    wx = wx+1;
                    int x =(int)lab_wolf.getLocation().getX();
                    int y =(int)lab_wolf.getLocation().getY();
                    lab_wolf.setLocation(x+50, y);
                    Icon i = new ImageIcon("wolf-ym.png");
                    lab_wolf.setIcon(i);
                    //-------人物移动代码结束---------------
                    return;
                }
                
                    
                if(datas[wy][wx+1]==0)    {
                //首先要知道人物现在在什么位置
                wx = wx+1;
                //人物就是lab_wolf这个组件
                //使用lab_wolf.getLocation()可以得到人物的位置
                int x =(int)lab_wolf.getLocation().getX();
                int y =(int)lab_wolf.getLocation().getY();
                //要知道移动一次步子多大
                //一步移动50?向右移动
                //x方向的值要变大50,y方向的值不变
                //最终要移动到x+50   y 这个地方
                //由上面的两个数据计算出移动以后人物在哪里
                lab_wolf.setLocation(x+50, y);
                //人物移动后要进行图片更新
                //首先要有图片
                Icon i = new ImageIcon("wolf-ym.png");
                //然后设置显示图片为指定图片
                lab_wolf.setIcon(i);
                }
            }
            
            
            if(key == 37){
                if(datas[wy][wx-1] == 1){
                    return;
                }
                if(datas[wy][wx-1] == 4){
                if(datas[wy][wx-2]!=1 && datas[wy][wx-2]!=4) {
                    datas[wy][wx-1] = 0;
                    datas[wy][wx-2] = 4;
                    sheeps[wy][wx-1].setLocation(12+wx*50-100,36+wy*50);
                    sheeps[wy][wx-2]=sheeps[wy][wx-1];
                    sheeps[wy][wx-1] = null;
                }
                    //-------人物移动代码开始----------
                    wx = wx-1;
                    int x =(int)lab_wolf.getLocation().getX();
                    int y =(int)lab_wolf.getLocation().getY();
                    lab_wolf.setLocation(x-50, y);
                    Icon i = new ImageIcon("wolf-zm.png");
                    lab_wolf.setIcon(i);
                    //-------人物移动代码结束---------------
                    return;
                }
                wx = wx-1;
                int x =(int)lab_wolf.getLocation().getX();
                int y =(int)lab_wolf.getLocation().getY();
                lab_wolf.setLocation(x-50, y);
                Icon i = new ImageIcon("wolf-zm.png");
                lab_wolf.setIcon(i);
            }
            
            
            if(key == 38){
                if(datas[wy-1][wx] == 1){
                    //所谓什么事情都不做就是不让下面的代码执行
                    return;
                }
                if(datas[wy-1][wx] == 4){
                    if(datas[wy-2][wx]!=1 && datas[wy-2][wx]!=4) {
                        datas[wy-1][wx] = 0;
                        datas[wy-2][wx] = 4;
                        sheeps[wy-1][wx].setLocation(12+wx*50,36+wy*50-100);
                        sheeps[wy-2][wx]=sheeps[wy-1][wx];
                        sheeps[wy-1][wx] = null;
                    }
                        //-------人物移动代码开始----------
                    wy = wy-1;
                    int x =(int)lab_wolf.getLocation().getX();
                    int y =(int)lab_wolf.getLocation().getY();
                    lab_wolf.setLocation(x, y-50);
                    Icon i = new ImageIcon("wolf-sm.png");
                    lab_wolf.setIcon(i);
                        //-------人物移动代码结束---------------
                        return;
                    }
                wy = wy-1;
                int x =(int)lab_wolf.getLocation().getX();
                int y =(int)lab_wolf.getLocation().getY();
                lab_wolf.setLocation(x, y-50);
                Icon i = new ImageIcon("wolf-sm.png");
                lab_wolf.setIcon(i);
            }
            
            
            if(key == 40){
                if(datas[wy+1][wx] == 1){
                    //所谓什么事情都不做就是不让下面的代码执行
                    return;
                }
                if(datas[wy+1][wx] == 4){
                    if(datas[wy+2][wx]!=1 && datas[wy+2][wx]!=4) {
                        datas[wy+1][wx] = 0;
                        datas[wy+2][wx] = 4;
                        sheeps[wy+1][wx].setLocation(12+wx*50,36+wy*50+100);
                        sheeps[wy+2][wx]=sheeps[wy+1][wx];
                        sheeps[wy+1][wx] = null;
                    }
                        //-------人物移动代码开始----------
                    wy = wy+1;
                    int x =(int)lab_wolf.getLocation().getX();
                    int y =(int)lab_wolf.getLocation().getY();
                    lab_wolf.setLocation(x, y+50);
                    Icon i = new ImageIcon("wolf.png");
                    lab_wolf.setIcon(i);
                        //-------人物移动代码结束---------------
                        return;
                    }
                wy = wy+1;
                int x =(int)lab_wolf.getLocation().getX();
                int y =(int)lab_wolf.getLocation().getY();
                lab_wolf.setLocation(x, y+50);
                Icon i = new ImageIcon("wolf.png");
                lab_wolf.setIcon(i);
            }
        }
        public void keyTyped(KeyEvent e) {
            
        }
        public void keyPressed(KeyEvent e) {
            
        }
    }
    View Code

    QQ登录页面

    import javax.swing.*;
    
    import java.awt.*;
    
    public class Login extends JFrame{
    
    JPanel mb;
    
    JLabel lb,lb1,lb2,lb3;
    
    JButton bt;
    
    JTextField username;
    
    JPasswordField password;
    
    JCheckBox select1,select2;
    
    public Login() {
    
    lb=new JLabel(new ImageIcon("qimg.png"));//上部分图片
    
    mb=new JPanel();
    
    //lb3=new JLabel(new ImageIcon("head.png"));//qq头像部分
    
    username =new JTextField(20);
    
    password=new JPasswordField(20);
    
    lb1=new JLabel("<html>注册账号</html>");
    
    lb1.setForeground(new Color(28,134,238));
    
    lb1.setFont(new Font("宋体",Font.PLAIN,16));
    
    lb1.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    
    lb2=new JLabel("<html>找回密码</html>");
    
    lb2.setForeground(new Color(28,134,238));
    
    lb2.setFont(new Font("宋体",Font.PLAIN,16));
    
    lb2.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    
    select1=new JCheckBox("记住密码");
    
    select1.setFont(new Font("宋体",Font.PLAIN,15));
    
    select1.setBackground(Color.WHITE);
    
    select2=new JCheckBox("自动登陆");
    
    select2.setFont(new Font("宋体",Font.PLAIN,15));
    
    select2.setBackground(new Color(255,250,250));
    
    bt=new JButton("登 录");
    
    //将组建添加到面板当中
    
    mb.add(lb2);mb.add(lb1);//mb.add(lb3);
    mb.add(select1);mb.add(select2);
    
    mb.add(bt);mb.add(username);mb.add(password);
    
    mb.setSize(540,190);
    
    //将面板的布局设为null,然后自定义布局
    
    mb.setLayout(null);
    
    mb.setBackground(Color.white);
    
    //lb3.setBounds(50, 3, 100, 100);
    
    username.setBounds(160, 14, 250, 37);
    
    username.setFont(new Font("宋体",Font.PLAIN,16));
    
    password.setBounds(160,48, 250, 37);
    
    password.setFont(new Font("宋体",Font.PLAIN,16));
    
    lb1.setBounds(420,10,80,34);
    
    lb2.setBounds(420,50,80,34);
    
    select1.setBounds(160,90,120,20);
    
    select2.setBounds(320,90,120,20);
    
    bt.setBounds(160,130,250,37);
    
    bt.setFont(new Font("宋体",Font.PLAIN,16));
    
    bt.setBackground(new Color(0,178,238));
    
    bt.setForeground(Color.white);
    
    this.add(lb,BorderLayout.NORTH);
    
    this.add(mb,BorderLayout.CENTER);
    
    this.setSize(540, 440);
    
    this.setTitle("用户登录");
    
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    
    this.setLocation(620, 280);
    
    this.setResizable(false);
    
    this.setVisible(true);
    
    }
    
    public static void main(String[] args) {
    
    Login login=new Login();
    
    }
    
    }
    View Code
  • 相关阅读:
    C/C++数组名与指针区别深入探索(转)
    mysql 的编译安装
    rpm的问题 ~/.rpmmacros %_rpmlock_path
    GCC中的弱符号与强符号(转)
    关于printf系列函数
    如何修改机器名
    multiple definition of XXXX 的解决
    由无名对象(临时对象)引发的关于“引用”的思考
    关于date中时间字符串的格式
    月薪不同,面试题不同!
  • 原文地址:https://www.cnblogs.com/LLiRo/p/12604714.html
Copyright © 2011-2022 走看看