运维开发网
广告位招商联系QQ:123077622
 
广告位招商联系QQ:123077622

初学者学习Java代码

运维开发网 https://www.qedev.com 2020-09-10 08:42 出处:51CTO 作者:小几斤
其实我学习java最根本的原因是:我是一个挺关注外在的人,虽然是个程序员,所以我很喜欢写出那些带有漂亮的界面的程序,因为C总是控制台,我不是很喜欢,在这份java代码合集中,我会记录自己学习Java界面化编程的点点滴滴。更新:因为C/C++是我主要使用语言,所有后来写界面主要用Qt写了,但我java也会继续学的。我只是给想学界面gui的同志一个思路。可以参考这篇文章Qt5 计算器的实现可能会有ja

其实我学习java最根本的原因是:我是一个挺关注外在的人,虽然是个程序员,所以我很喜欢写出那些带有漂亮的界面的程序,因为C总是控制台,我不是很喜欢,在这份java代码合集中,我会记录自己学习Java界面化编程的点点滴滴。

更新:因为C/C++是我主要使用语言,所有后来写界面主要用Qt写了,但我java也会继续学的。我只是给想学界面gui的同志一个思路。可以参考这篇文章Qt5 计算器的实现

可能会有java初学者,,我也是,说明,java是一个工程里可以有很多java类class,每一个类class都可以单独运行,不像C语言里只能有一个main()函数可以运行,这是我的代码合集程序结构:

初学者学习Java代码

helloworld:

class Javahelloworld {  public static void main(String args[]){         System.out.println("hello world\n");     }}

基本输入输出:

import java.util.Scanner; 
public class ScannerTest { 
 public static void main(String[] args){ 
        Scanner scanner=new Scanner(System.in); 
        System.out.print("请输入一个数"); 
 int a=scanner.nextInt(); 
        System.out.printf("%d的平方是%d\n",a,a*a); 
    }}

Java图形化界面求数的平方:

import java.awt.*;import java.awt.event.*; 
import javax.swing.*;/**包含JFrame*/ 
public class AppGraphInOut { 
 public static void main(String args[]){ 
 new AppFrame(); 
    }} class AppFrame extends JFrame 
{    JTextField in=new JTextField(10); 
    JButton btn=new JButton("求平方"); 
    JLabel out=new JLabel("用于显示平方结果的标签"); 
 public AppFrame() 
    {        setLayout(new FlowLayout()); 
        getContentPane().add(in); 
        getContentPane().add(btn); 
        getContentPane().add(out); 
        btn.addActionListener(new BtnActionAdapter()); 
        setSize(400,100); 
        setDefaultCloseOperation(DISPOSE_ON_CLOSE);        setVisible(true); 
    }  class BtnActionAdapter implements ActionListener 
    { public void actionPerformed(ActionEvent e) 
        {            String s=in.getText(); 
 double d=Double.parseDouble(s); 
 double sq=d*d; 
            out.setText(d+"的平方是:"+sq); 
        }    }}

初学者学习Java代码

初学者学习Java代码

Java位运算:

public class BitwiseOperators { 
 public static void main(String args[]){ 
 int a=0b1100; 
 int b=0b1010; 
        print("a    ",a); 
        print("b    ",b); 
        print("a&b  ",a&b); 
        print("a|b  ",a|b); 
        print("a^b  ",a^b); 
        print("~a   ",~a); 
        print("a<<2 ",a<<2); 
        print("a>>2 ",a>>2); 
        print("a>>>2    ",a>>>2); 
    } static void print(String prefix,int n){ 
        String s=Integer.toBinaryString(n); 
 while(s.length()<4)s="0"+s; 
        System.out.print(prefix+" "+s+"\n"); 
    }}

初学者学习Java代码

同心圆:

import java.awt.*; 
import javax.swing.*; 
 public class Circle99Frame extends JFrame { 
 public static void main(String args[]) 
    { 
        JFrame frame=new Circle99Frame(); 
        frame.setDefaultCloseOperation(DISPOSE_ON_CLOSE);        frame.setSize(600,600); 
        frame.setVisible(true); 
    } public void paint(  Graphics g) 
    { 
        g.drawString("circle 99",20,20); 
 int x0=getSize().width/2; 
 int y0=getSize().height/2; 
 for(int r=0;r<getSize().height/2;r+=10) 
        {            g.setColor(getRandomColor());            g.drawOval(x0-r,y0-r,r*2,r*2); 
        }    } Color getRandomColor() 
    { 
 return new Color( 
                (int)(Math.random()*255),//random本身只产生(0~1)之间的小数, 
                (int)(Math.random()*255), 
                (int)(Math.random()*255) 
        ); 
    } 
}

初学者学习Java代码

下面呢是一个常见的简陋的登陆界面,这个程序是这个两个类class共同组成的程序,先看代码:

import javax.swing.JFrame; 
 import javax.swing.JPanel; 
 public class DemoFrame extends JFrame{ 
  public DemoFrame(DemoPanel panel) 
  
    { 
  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
  this.setSize(300, 200); 
  this.setTitle("Frame Demo"); 
  this.add(panel); 
  this.setResizable(false); 
  this.setVisible(true); 
     }    public static void main(String[] args) 
  
    { 
         DemoPanel panel = new DemoPanel(); 
         DemoFrame Frame = new DemoFrame(panel); 
     } }
  1. import java.awt.GridLayout; 

  2.    import javax.swing.JButton; 

  3.  import javax.swing.JLabel; 

  4.  import javax.swing.JPanel; 

  5.  import javax.swing.JPasswordField; 

  6.  import javax.swing.JTextField; 

  7.    public class DemoPanel extends JPanel{ 

  8.     private JLabel labelUser, labelPassWd;            //标签      用户名,密码 

  9.   

  10.  private JButton buttonLogin, buttonReset;         //按钮      登录,重置 

  11.   

  12.  private JTextField textFieldUserName;             //文本框  用户名输入 

  13.   

  14.  private JPasswordField passWdField;               //密码框  密码输入 

  15.   

  16.  private JPanel panelUserName; 

  17.   

  18.  private JPanel panelPassWd; 

  19.   

  20.  private JPanel panelLoginButton; 

  21.   

  22.   

  23.   

  24.  public DemoPanel(){   

  25.  this.labelUser = new JLabel("用户名");   

  26.  this.labelPassWd = new JLabel("密    码");   

  27.  this.buttonLogin = new JButton("登录");   

  28.  this.buttonReset = new JButton("重置");   

  29.  this.textFieldUserName = new JTextField(10);   

  30.  this.passWdField = new JPasswordField(10);   

  31.  this.panelPassWd = new JPanel();   

  32.  this.panelUserName = new JPanel();   

  33.  this.panelLoginButton = new JPanel();   

  34.   

  35.   

  36.  this.setLayout(new GridLayout(3, 1));  //网格式布局   

  37.   

  38.  this.panelUserName.add(this.labelUser);   

  39.  this.panelUserName.add(this.textFieldUserName);   

  40.  this.panelPassWd.add(this.labelPassWd);   

  41.  this.panelPassWd.add(this.passWdField);   

  42.  this.panelLoginButton.add(buttonLogin);   

  43.  this.panelLoginButton.add(buttonReset); 

      

  44.   

  45.  this.add(this.panelUserName);   

  46.  this.add(this.panelPassWd);   

  47.  this.add(this.panelLoginButton);   

  48.     }   

程序结果如下 :

初学者学习Java代码

简单的加法器:

package TEST;   import javax.swing.JOptionPane;  //导入类 
   public class TEST 
  
{ 
  
 public static void main(String args[]) 
  
    { 
  
        String input_pane1,input_pane2; 
  int n1,n2,sum;         input_pane1 = JOptionPane.showInputDialog("Please input the first number");  //输入框1 
         input_pane2 = JOptionPane.showInputDialog("Please input the second number"); //输入框2 
         n1 = Integer.parseInt(input_pane1); //获取输入框中输入数据的整数类型 
         n2 = Integer.parseInt(input_pane2);//获取输入框中输入数据的整数类型 
         sum = n1+n2;         JOptionPane.showMessageDialog(null, "The sum is: "+sum,"Adding Device",JOptionPane.PLAIN_MESSAGE); 
  //第1个参数:null 显示在中央 
  //第2个参数:要显示的字符 
  
 //第3个参数:标题栏信息 
  
 //第4个参数:对话框类型 
  
        System.exit(0);  //终结图形用户界面程序必须的 
  
    } 
  
}

结果如下:

初学者学习Java代码

初学者学习Java代码

初学者学习Java代码

说到这里,我其实有些感触,记得上学期,我们做课程设计,当时一个同学的题目是写一个带界面的大数乘除运算器,关于大数乘除的方法,我有时间再总结一下,但是这个界面当时同学其实是不会的,但是现在看,如果单纯实现界面还是比较简单的,首先看我修改的第一个拙劣的界面版本模板:

初学者学习Java代码

这样其实就好了很多,起码可以看到加数是哪些了,代码很简单,只需要在输出那行添加上n1和n2的信息就可以了。

JOptionPane.showMessageDialog(null, n1+"+"+n2+" The sum is: "+sum,"Adding Device",JOptionPane.PLAIN_MESSAGE);

【编辑推荐】

  1. Java中的21种锁,图文并茂的详细解释

  2. 谈谈Java中自定义注解及使用场景

  3. 我用 Java 8 写了一段逻辑,同事直呼看不懂,你试试看

  4. 8月份GitHub上热门的Java开源项目

  5. Java多线程知多少

【责任编辑:未丽燕 TEL:(010)68476606】

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消