java fundamentals, part 1 1
TRANSCRIPT
![Page 1: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/1.jpg)
Java Fundamentals, Part 1
1
http://mipav.cit.nih.gov
![Page 2: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/2.jpg)
2
MIPAV TeamEmployees
Ruida Cheng
William Gandler
Matthew McAuliffe
Evan McCreedy
Justin Senseney
Fellows
Sara Shen
Contractors
Alexandra Bokinsky, Geometric Tools Inc. (Visualization)
Olga Vovk, SRA International Inc. (Technical Writing)
Alumni
Paul Hemler, Agatha Munzon, Nishith Pandya,
David Parsons, Beth Tyriee, Hailong Wang
![Page 3: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/3.jpg)
Medical Image Processing, Analysis & Visualization
&JAVA
3
Justin Senseney
Biomedical Imaging Research Services Section (BIRSS)
Imaging Sciences Laboratory
Division of Computational Bioscience
Center for Information Technology (301) 594-5887
http://mipav.cit.nih.gov
http://dcb.cit.nih.gov/~senseneyj
![Page 4: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/4.jpg)
Mipav Interface
4
• Interface to Java• Interface to image processing libraries
![Page 5: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/5.jpg)
Java Steps
5
• Methods
• Comments
• Printing
• Data types
• Equality
• If
• Loops
• Switch
![Page 6: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/6.jpg)
Method
6
private void init() { setForeground(Color.black); setTitle("Generic Plugin 5.4.2"); try {
setIconImage(MipavUtil.getIconImage("divinci.gif"));} catch (FileNotFoundException e) { Preferences.debug("Failed to load default icon", Preferences.DEBUG_MINOR);}……
Visibility
Return type
![Page 7: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/7.jpg)
Comments (1)
7
private void init() { setForeground(Color.black); /*setTitle("Generic Plugin 5.4.0"); try {
setIconImage(MipavUtil.getIconImage("divinci.gif"));} catch (FileNotFoundException e) { Preferences.debug("Failed to load default icon", Preferences.DEBUG_MINOR);}*/……
![Page 8: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/8.jpg)
Comments (2)
8
private void init() { //setForeground(Color.black); setTitle("Generic Plugin 5.4.2"); try {
setIconImage(MipavUtil.getIconImage("divinci.gif"));} catch (FileNotFoundException e) { Preferences.debug("Failed to load default icon", Preferences.DEBUG_MINOR);}……
CTRL+shift+C when all lines are highlighted
![Page 9: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/9.jpg)
Print data
9
private void init() { System.out.println(“Hello world”);
……
Shown in console
![Page 10: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/10.jpg)
Data types
10
private void init() { int a = 16;
double b = 16.0;
String str = " test "; boolean isEqual = false; System.out.println(a+str+isEqual);
![Page 11: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/11.jpg)
Equality
11
private void init() { int a = 123; int b = 321; boolean isEqual = (a == b); boolean isEqual2 = (a != b); System.out.println("A: "+a + "B: " + b + isEqual + isEqual2);
![Page 12: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/12.jpg)
Usability
12
private void init() { String str = " test "; String str2 = " te2st "; boolean isEqual = (str == str2); //Are these two equal? boolean isEqual2 = (str != str2); //Are these two different? System.out.println(str+str2+" Equal: "+isEqual+" Not equal: "+isEqual2);
![Page 13: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/13.jpg)
Review
• Method
• Comments
• Print data
• Data types
• Equality
13
![Page 14: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/14.jpg)
Method – make your own
14
private int myAddMethod(int initial) { initial = initial + 1; return initial; } private void init() { int a = 10; int b = myAddMethod(a); System.out.println("A: "+a+" B: "+b);
Visibility Return type Input
![Page 15: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/15.jpg)
If statement
15
private int myAddMethod(int initial) { if(initial < 10) { initial = initial + 1; } else { initial = initial + 2; } return initial;}
![Page 16: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/16.jpg)
Else If statement
16
private int myAddMethod(int initial) { if(initial < 10) { initial = initial + 1; } else if(initial >= 10) { initial = initial + 2; } return initial;}
![Page 17: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/17.jpg)
While loop
17
private int myAddMethod(int initial) {
while(initial < 100) { initial = initial + 1; } return initial; }
Boolean ending condition
![Page 18: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/18.jpg)
For loop
18
private int myAddMethod(int initial) {
for(int i=initial; i < 100; i++) {System.out.println(i);
} return initial;}
Loop’s private variable
![Page 19: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/19.jpg)
For loop
19
private int myAddMethod(int initial) {
for(int i=initial; i < 100; i++) {System.out.println(i);
} return initial;}
Action occurs at end of each iteration
![Page 20: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/20.jpg)
For loop
20
private int myAddMethod(int initial) {
for(int i=initial; i < 100; i++) {System.out.println(i);
} return initial;}
Boolean variable checked before each iteration
![Page 21: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/21.jpg)
For loop quiz
21
private int myAddMethod(int initial) {
for(int i=initial; i < 100; i++) {
initial = initial + i; } return initial;}
Given initial = 10
What is final value of initial?
![Page 22: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/22.jpg)
Switch/case
22
private int myAddMethod(int initial) { switch(initial) { case 1: case 2: case 3:
initial = 4; break;
default:
initial = initial+1; break;
} return initial; }
Break shows to exit switch
![Page 23: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/23.jpg)
Review
• Creating methods
• If/Else if
• While
• For
• Switch/case
23
![Page 24: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/24.jpg)
Quiz 1 - Evaluate
24
private boolean myMethod(int initial) { if(initial < 100) { return true; } else { return false; }} private void init() { boolean a = myMethod(99); System.out.println(a); System.out.println(myMethod(101)); System.out.println(myMethod(100));
![Page 25: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/25.jpg)
Quiz 2 - Evaluate
25
private int myMethod(int initial) { int done = 0; for(int i=0; i<=initial; i++) { done = done + i; } return done; } private void init() { System.out.println(myMethod(10)); System.out.println(myMethod(0)); System.out.println(myMethod(-1));
![Page 26: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/26.jpg)
Quiz 3 - Evaluate
26
private int myMethod(int initial) { if(initial < 0) { return 0; } else { return initial+myMethod(initial-1); } } private void init() {
System.out.println(myMethod(1));
System.out.println(myMethod(2));
System.out.println(myMethod(10)); System.out.println(myMethod(-1));
![Page 27: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/27.jpg)
Task - Write
27
• Method to compute average of two numbers
• Method to print out whether a number is even
• Method with infinite loop
![Page 28: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/28.jpg)
Summary
• Java primitive types
• Java loops
• Java methods
• Fundamentals
28
![Page 29: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/29.jpg)
Next time
• Java arrays
• Java API
• MIPAV API
29
![Page 30: Java Fundamentals, Part 1 1](https://reader036.vdocuments.mx/reader036/viewer/2022062423/56649ed85503460f94be6c98/html5/thumbnails/30.jpg)
30
Visualization
File readerQuantification File writer
Processing Macros