Skip to content

Latest commit

 

History

History
273 lines (236 loc) · 6.58 KB

README.md

File metadata and controls

273 lines (236 loc) · 6.58 KB

N/A Java BoA~

<List>

  • There are various ways to fulfill or skip the expressions in for loop statement

ForSkipExpressions.java

class ForSkipExpressions
{
    public static void main(String[] args)
    {
        int i, sum;

        // 1. Use two parameters in the 1st expression
        for(i = 0, sum = 0; i <= 10; i++) sum += i;
        System.out.println(sum);

        // 2. Skip the 1st expression
        for( ; i <= 100; i++) sum += i;
        System.out.println(sum);

        // 3. Skip the 1st and 2nd expressions
        for( ; ; i++)
        {
            sum += i;
            if(i >= 1000) break;
        }
        System.out.println(sum);

        // 4. Skip all the expressions
        for( ; ; )
        {
            i++;
            sum += i;
            if(i >= 10000) break;
        }
        System.out.println(sum);
    }
}
55
5050
500500
50005000
  • A practice of multi-thread
  • Using java.lang.Thread

MultiThread.java

class NumThread extends Thread
{
	public void run()
	{
		for (int i = 0; i <= 26; i++)
		{
			System.out.print(i);
			try
			{
				Thread.sleep(250);				
			}
			catch (Exception e) {}
		}
	}
}
class CharThread extends Thread
{
	public void run()
	{
		for (char letter = 'A'; letter <='Z' ; letter++)
		{
			System.out.print(letter);
			try
			{
				Thread.sleep(250);				
			}
			catch (Exception e) {}
		}
	}
}
public class MyThread
{
	public static void main(String args[])
	{
		Thread thread1 = new NumThread();
		Thread thread2 = new CharThread();
		thread1.start();
		thread2.start();
	}
} 

0A1B2C3D4E5F6G7H8I9J10K11L12M13N14O15P16Q17R18S19T20U21V22W23X24Y25Z26

Swing.java

Swing Practice

Import classes

import java.awt.GridLayout;
import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode;

A frame to contain components

		// JFrame : initialize a window
		JFrame f = new JFrame("My Java Swing GUI Practice");

		// (Swing components)
		
		f.setSize(600, 600);
		f.setLayout(new GridLayout(3, 3));
		f.setVisible(true);

Components

		// JLabel()
		JLabel l1 = new JLabel("This is a text label.");
		l1.setHorizontalAlignment(JLabel.CENTER);
		f.add(l1);
		// JTextField
		JTextField t1 = new JTextField("This is a text field.");
		t1.setHorizontalAlignment(JLabel.CENTER);
		f.add(t1);
		// JButton
		JButton b1 = new JButton("OK");
		f.add(b1);
		//JList
		String gui[] = {"Windows Forms", "WPF", "Electron", "React Native", "Java Swing"};
		JList<String> list = new JList(gui);
		f.add(list);
		// JTable
		String data[][] =
		{
			{"Python", "aphoristic"},
			{"C++", "hostile"},
			{"Java", "too much talker"}
		};
		String varname[] = {"Name", "Character"};
		JTable table = new JTable(data, varname);
		f.add(table);
		// JTree
		DefaultMutableTreeNode node = new DefaultMutableTreeNode("Java");
		DefaultMutableTreeNode node100 = new DefaultMutableTreeNode("Javax"); node.add(node100);
		DefaultMutableTreeNode node110 = new DefaultMutableTreeNode("Swing"); node100.add(node110);
		DefaultMutableTreeNode node111 = new DefaultMutableTreeNode("JLabel"); node110.add(node111);
		DefaultMutableTreeNode node112 = new DefaultMutableTreeNode("JTextField"); node110.add(node112);
		DefaultMutableTreeNode node113 = new DefaultMutableTreeNode("JButton"); node110.add(node113);
		DefaultMutableTreeNode node200 = new DefaultMutableTreeNode("awt"); node.add(node200);
		DefaultMutableTreeNode node210 = new DefaultMutableTreeNode("GridLayout"); node200.add(node210);	
		JTree tree = new JTree(node);
		f.add(tree);
		// JSpinner
		JSpinner spinner = new JSpinner();
		f.add(spinner);
		// JSlider
		JSlider slider = new JSlider(JSlider.HORIZONTAL);
		f.add(slider);
		// JMenuBar / JMenu
		JMenuBar menuBar = new JMenuBar();
		JMenu fileMenu = new JMenu("File"); menuBar.add(fileMenu);
		JMenu menuItem1 = new JMenu("Open"); fileMenu.add(menuItem1);
		JMenu menuItem2 = new JMenu("Save"); fileMenu.add(menuItem2);
		JMenu menuItem3 = new JMenu("Quit"); fileMenu.add(menuItem3);
		JMenu helpMenu = new JMenu("Help"); menuBar.add(helpMenu);
		JMenu menuItem4 = new JMenu("About"); helpMenu.add(menuItem4);
		f.add(menuBar);
  • A practice of deprecated class java.util.Date
  • So terrible

DatePractice.java

import java.util.Date;
import java.text.SimpleDateFormat;
		// java.util.Date() : old-fashioned class (deprecated)
		Date date = new Date();
		System.out.println(date); // original
		System.out.println(date.toLocaleString()); // print in Korean
		System.out.println(date.getYear() + 1900); // the year represented by this date, minus 1900
		System.out.println(date.getDay()); // int, 0 = Sunday

Tue Mar 09 09:37:35 KST 2021
2021. 3. 9 오전 9:37:35
2021
2

		// set a date
		Date date2 = new Date(2015-1900, 3-1, 7); // month : 0 = January
		System.out.println("\n" + date2);
		System.out.println(date2.getYear() + date2.getMonth() + date2.getDate()); // int + int + int
		// System.out.println(date2.getYear().toString() + date2.getMonth().toString() + date2.getDate().toString()); // error
		System.out.println(date2.getYear() + " " + date2.getMonth() + " " + date2.getDate());
		System.out.println((date2.getYear() + 1900) + "-" + (date2.getMonth() + 1) + "-" + date2.getDate());

Sat Mar 07 00:00:00 KST 2015
124
115 2 7
2015-3-7

		// set a date format
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
		System.out.println("\n" + sdf.format(date2));
		SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd");
		System.out.println(sdf2.format(date2)); // crazy

2015-00-07
2015-03-07

		// minus(-) operation between two times different to each other
		long dateDiff = date.getTime() - date2.getTime();
		System.out.println("\nIt has been " + dateDiff/1000/60/60/24 + " days since we got married.");
		// 1 from getTime() means 1/1,000 second

It has been 2194 days since we got married.