JAVA計算機二級上機試題及答案2017
考試的通過離不開大量的習題練習,習題練習的過程可以加深對知識點的記憶。下面是小編整理的JAVA計算機二級上機試題及答案,希望對大家有用,更多消息請關注應屆畢業生網。
一、基本操作題
本題將數組中arr[]={5,6,3,7,9,1}的各個元素按下標的逆序輸出。
public class javal{
public static void main(String[]args){
int arr[]={5,6,3,7,9,1};
;
n= ;
while(n>=O){
t(arr[n]+"");
;
}
}
}
二、簡單應用題
本題中,用表格表現某個月的月曆,其中標題是從Sunday到Saturday,表格中的各項是可以修改的'。
import .*;
import t.*;
import g.*;
import e.*;
public class java2
(
public static void main(String[]args)
{
try{
ookAndFeel(ys-
temLookAndFeelClassName()):
}
catch(Exception e)()
JFrame frame=new CalendarTableFrame();
efaultCloseOperation(_
oN CLOSE);
();
}
}
clasgCalendarTableFrame extends JFrame
{
private static final int WIDTH=500;
private static final int HEIGHT=150:
private cells=
{
{null,null,null,new Integer(1),new Integer
(2),new Integer(3),new Integer(4)),
{new Integer(5),new Integer(6),new Integer
(7) Integer(8),new Integer(9),new Integer
(10),new Integer(11)),
{new Integer(12),new Integer(13),new Integer
(14),new Integer(15),new Integer(16),new Integer
(17),new Integer(18)),
{new Integer(19),new Integer(20),new Integer
(21),new Integer(22),new Integer(23),new Integer
(24),new Integer(25)),
{new Integer(26),new Integer(27),new Integer
(28),new Integer(29),new Integer(30),new Integer
(31),null}
};
private String[]columnNames={
"Sunday","Monday","Tuesday","Wednesday",
"Thursday","Friday","Saturday"
};
public CalendarTableFrame(){
setTitle("java2");
setSize(WIDTH,HEIGHT);
JTable table=new ;
getContentPane()(new JScrollPane(table),
ER);
}
}
三、綜合應用題
本題的功能是用鍵盤上的方向鍵來控制直線的繪製方向。如果一直按向上的方向鍵,則在窗口中從焦點開始向上緩慢繪製直線,按其他方向鍵也會向對應的方向緩慢地繪製直線,如果按下鍵的話,繪製直線的速度會加快。
import .*;
import .*;
import .*;
import t.*;
import g.*;
public class java3{
public static void main(String[]args)
{
SketchFrame frame=new SketchFrame();
efauhCloseOperation(_
ON_CLOSE);
();
}
}
class SketchFrame extends JFrame
{
public SketchFrame()
{
setTitle("java3");
setSize(DEFAULT WIDTH, DEFAULT
HEIGHT);
SketehPanel panel=new SketchPanel();
Container contentPane=getContentPane();
(panel);
}
public static final int DEFAULT_WIDTH=300;
public static final int DEFAULT_HEIGHT
=200;
}
class SketehPanel extends JPanel
{
public void sketchPanel()
{
last=new le(100,100);
lines=new ArrayList();
KeyHandler listener=new KeyHandler();
addkeyListener(this);
setFocusable(true);
}
public void add(int dx,int dy)
{
Point2D end=new le(()
+dx,
()+dy):
Line2D line=new le(last,end);
(line):
repaint();
last=end:
}
public void paintComponent(Graphics g)
{
tComponent(g);
Graphics2D g2=(Graphics2D)g;
for(int i=0;i
((Line2D)(i));
}
private Point2D last:
private ArrayList lines;
private static final int SMALL_INCREMENT
=1:
private static final int LARGE_INCREMENT
=5;
private class KeyHandler implements KeyListener
{
public void keyPressed(KeyEvent event)
{
KEY keyCode=eyCode();
int d;
if(iftDown())
d=LARGE_INCREMENT;
else
d=SMALL_INCREMENT;
if(keyCode= =_LEFT)add(-
d,0);
else if(keyCode= =_RIGHT)
add(d,0);
else if(keyCode= =_UP)add(0,
-d):
else if(keyCode= =_DOWN)
add(0,d);
}
public void keyReleased(KeyEvent event){}
public void keyTyped(KeyEvent event)
{
char keyChar=eyChar();
int d;
if(perCase(keyChar))
{
d=LARGE_INCREMENT;
keyChar=werCase(keyChar);
}
else
d=SMALL_INCREMENT;
}
}
}
考試試題答案與解析
一、基本操作題
第1處:int n
第2處:arr.1ength-1
第3處:n--或n=n-1或n-=l
【解析】第1處使用前定義變量n;第2處和第3處遍歷數組各元素。
二、簡單應用題
第1處:Object[][]
第2處:JTable(cells,columnNames)
【解析】第1處定義二維數組保存日期數據;第2處JTable的構造方法第一個參數是數據,第二個參數是表格第一行中顯示的內容。
三、綜合應用題
第1處:pulic SketchPanel()
第2處:addKeyListener(listener)
第3處:int keyCode=eyCode()
【解析】第1處SketchPanel是構造方法,構造方法是給對象賦初值,所以沒有返回值,但不用void來聲明;第2處註冊時間的探聽器,參數應為事件源;第3處getKeyCode()方法獲得的是int型的鍵碼。