import java.util.*;
class Count {
public static void main(String[] args) {
HashMap <String, String> hm = new HashMap <String, String>();
hm.put("hongqi","male");
hm.put("qingyang","femal");
for (Map.Entry var : hm.entrySet()) {
System.out.println(var.getKey() + " = " + var.getValue());
}
int numbs[] = new int[]{ 1, 3, 5, 8 , 9, 6 ,5 ,8 ,3 ,7 ,5 ,4 ,9 ,7 };
int result[] = new int[]{0,0,0,0,0,0,0,0,0,0};
int another[] = new int[10];
for(int var: numbs) {
if ( var >=0 | var < 10) {
result[var]=result[var]+1;
}
}
int i=0;
for( int var: result) {
System.out.println( i++ + " - " + var );
}
////runnable thread////
Thread td = new Thread(new Runnable() {
@Override
public void run() {
for(;;) {
try {
Thread.sleep(1000);
}
catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("Thread running...");
}
}
});
td.start();
try {
td.join(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
Java Thread
types of JAVA Thread
1. runnable method
Runnable runnable = new RunnableExample();
Thread thread = new Thread(runnable);
thread.start();
new Thread(new Runnable()
{
@Override
public void run() {
System.out.println("blah");
}
}).start();
2. Thread method
Thread thread = new ThreadExample();
thread.start();
new Thread()
{
public void run() {
System.out.println("blah");
}
}.start();
Java compiling and executing
complex one
set -x
rm -r out
mkdir out
javac -cp ./src/main/java:./libs/* ./src/main/java/com/exec/two/*.java -d ./out/
cp -r libs out/
jar cvfm ExecutableTwo.jar ./src/main/resources/META-INF/MANIFEST.MF -C ./out/ .
java -jar ExecutableTwo.jar
simple one
javac helloworld.java
java -cp "entry:library:path" helloworld
or export CLASSPATH=entry:library:path
then java helloworld
Java Notes:
byte/short/int/long/float/double/boolean/char;
int[] intArray = new int[10];
int[] intArray = new int[]{ 1,2,3,4,5,6,7,8,9,10 };
String greeting = "Hello world!";
char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
String helloString = new String(helloArray);
Hashtable is synchronized, whereas HashMap is not.
Hashtable does not allow null keys/values. .
HashMap could easily swap out the HashMap for a LinkedHashMap.
LinkedList<String> ll=new LinkedList<String>()
ll.add(val)
ll.remove(val) or remove(2)
HashMap<Integer,String> hm=new HashMap<Integer,String>()
hm.put("name","emily")
hm.remove(key)
//for loop
String array[] = {"Ron", "Harry", "Hermoine"};
for (String x:array){
System.out.println(x);
}
import java.util.*;
abstract class Base { //use extends for abstract method declaration and variable
Base(){
System.out.println("enter Base()");
}
abstract void draw();
}
interface Shape { //use implements for method declaration
void run();
}
class Derive extends Base implements Shape { //for abstract and interface
public Derive() {
System.out.println("enter Derive()");
}
public void draw(){
System.out.println("enter draw()");
}
public void run(){
System.out.println("enter run()");
}
}
public class Hello {
public static void main(String[] args) {
// Prints "Hello, World" to the terminal window.
// show List
ArrayList<String> al=new ArrayList<String>();
al.add("Amit");
al.add("Kumar");
al.add(1,"Sachin");
System.out.println("Element at 013nd position: "+al.get(0)+al.get(1)+al.get(2));
for(String s:al){
System.out.println(s);
}
// show Set
System.out.println("list set:");
Set<String> st=new HashSet<String>();
st.add("Amit");
st.add("Kumar");
//st.add(1,"Sachin");
//System.out.println("Element at 013nd position: "+st.get(0)+st.get(1)+st.get(2));
for(String s:st){
System.out.println(s);
}
//show Map
Map<Integer, String> map = new HashMap<Integer, String>();
Integer key1 = new Integer(123);
String value1 = "value 1";
Integer key2 = new Integer(456);
String value2 = "value 2";
map.put(key1, value1);
map.put(key2, value2);
String value1_1 = map.get(key1);
for(Integer aKey : map.keySet()) {
String aValue = map.get(aKey);
System.out.println("" + aKey + ":" + aValue);
}
//show hashtable
// Creating a Hashtable
Hashtable<String, String> hashtable =
new Hashtable<String, String>();
// Adding Key and Value pairs to Hashtable
hashtable.put("Key1","Chaitanya");
hashtable.put("Key2","Ajeet");
for(String aKey : hashtable.keySet()) {
String aValue = map.get(aKey);
System.out.println("" + aKey + ":" + aValue);
}
//show object from inheritence and implement from abstract and interface.
Derive dv=new Derive();
dv.run();
dv.draw();
}
}
Java Unit Test
download and install junit.jar and hamcrest-core.jar
# put source into like wavecloud.com
package wavecloud.com
public class MessageUtil {
private String message;
public MessageUtil(String message){
this.message = message;
}
public String printMessage(){
System.out.println(message);
return message;
}
}
put test code under test(directly)
package test
import org.junit.Test;
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
import static org.junit.Assert.assertEquals;
public class TestJunit {
String message = "Hello World";
MessageUtil messageUtil = new MessageUtil(message);
@Test
public void testPrintMessage() {
assertEquals(message,messageUtil.printMessage());
}
public static void main(String[] args) {
Result result = JUnitCore.runClasses(TestJunit.class);
for (Failure failure : result.getFailures()) {
System.out.println(failure.toString());
}
System.out.println(result.wasSuccessful());
}
}
test case(use testrunner)
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class TestJunit {
String message = "Hello World";
MessageUtil messageUtil = new MessageUtil(message);
@Test
public void testPrintMessage() {
assertEquals(message,messageUtil.printMessage());
}
}
#use test runner
package test
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
public class TestRunner {
public static void main(String[] args) {
Result result = JUnitCore.runClasses(TestJunit.class);
for (Failure failure : result.getFailures()) {
System.out.println(failure.toString());
}
System.out.println(result.wasSuccessful());
}
}