Tuesday, March 17, 2020

Tips for Successful Late Night Studying

Tips for Successful Late Night Studying What is your best study time? Do you feel most like studying in the wee hours of the night? If so, you are not alone. But  that can be a problem for parents and school officials. While some students like to get up early in the morning and study, most will say that late night studying is most productive. When it comes to brain power, students will say they perform better at nightand the fact that parents might find surprising and  interesting is that  science seems to agree. That can be a problem. School starts early in the morning for most students, so the benefits of studying at night can be eliminated by the drowsiness of missing sleep! Science also shows that the amount of sleep you get will affect your academic performance. Here Are a Few Tips for Maximizing Study Time Figure out if you are a morning person or a night person. You might surprise yourself. Try getting up early to study and see if it works out.Have a talk with parents to tell them that teen brains do perform better at night, so you won’t have to deal with miscommunication. Show them the science. You might be able to come up with a solution.Agree on an absolute â€Å"start time† for studying if you need to study late. Turn off the TV! Your brain should be just fine at six or seven o’clock. You don’t need to start after dark.Agree on a solid deadline for closing books and getting to sleep.Dont waste time on texts, games, and social media. You can do all of that early evening and get serious later in the evening if youre a night owl.Upon occasion, you may be able to go to school a little late if you have to study for an afternoon test. As long as you are communicating with your parents, and as long as the tardiness doesnt hurt your grades, you may be able to w ork this out. Sources: Improved Academic Success. ScienceDaily. Retrieved November 7, 2009, from sciencedaily.com ¬ /releases/2009/06/090610091232.htm Teens. ScienceDaily. Retrieved November 7, 2009, from sciencedaily.com ¬ /releases/2007/05/070520130046.htm

Sunday, March 1, 2020

DefaultTableModel Class in Java Stores Data for the JTable

DefaultTableModel Class in Java Stores Data for the JTable TheDefaultTableModel class is a subclass of the AbstractTableModel. As the name suggests it is the table model that is used by a JTable when no table model is specifically defined by the programmer. The DefaultTableModel stores the data for the JTable in a Vector of Vectors. Although theVector is a legacy Java collection it is still supported and there is no issue with using it unless the additional overhead caused by using a synchronized collection is a problem for your Java application. The advantage of using theDefaultTableModel over a custom AbstractTableModel is you dont have to code the methods like add, insert or delete rows and columns. They already exist to change the data held in the Vector of Vectors. This makes it a quick and easy table model to implement. Import Statement import javax.swing.table.DefaultTableModel; Constructors TheDefaultTableModel class has six constructors. Each can be used to populate of the DefaultTableModel in different ways. The first constructor takes no arguments and creates aDefaultTableModel which has no data, zero columns and zero rows: DefaultTableModel defTableModel DefaultTableModel(); The next constructor can be used to specify the number of rows and columns of aDefaultTableModel with no data: DefaultTableModel defTableModel DefaultTableModel(10, 10); There are two constructors that can be used to create aDefaultTableModel with column names and a specified number of rows (all containing null values). One uses an ​Object array to hold the column names, the other ​a Vector: String[] columnNames {Column 1,Column 2,Column 3}; DefaultTableModel defTableModel DefaultTableModel(columnNames, 10); or DefaultTableModel defTableModel DefaultTableModel(columnNames, 10); Finally there are two constructors used to populate theDefaultTableModel with row data along with column names. One used Object arrays, the other Vectors: Object[][] data {{1,1,1},{2,2,2},{3,3,3},{4,4,4}}; String[] columnNames {Column 1,Column 2,Column 3}; DefaultTableModel defTableModel DefaultTableModel(data, columnNames); or Vector rowData new Vector(); rowData.add(1); Vector data new Vector(); data.add(0, rowData); Vector columnNames new Vector(); columnNames.add(Column 1); DefaultTableModel defTableModel DefaultTableModel(data, columnNames); Useful Methods To add a row to theDefaultTableModel use the addRow method along with the row data to add: Object[] newRowData {5,5,5,5}; defTableModel.addRow(newRowData); To insert a row use theinsertRow method, specifying the row index to insert and the row data: Object[] insertRowData {2.5,2.5,2.5,2.5}; defTableModel.insertRow(2,insertRowData); To delete a row use theremoveRow method, specifying the row index to delete: defTableModel.removeRow(0); To get a value in a table cell use thegetValueAt method. For example, if the data at row 2, column 2 contains an int: int value tabModel.getValueAt(2, 2); To set a value in a table cellsetValueAt method with the value to set along with the row and column index: defTableModel.setValueAt(8888, 3, 2); Usage Tips If aJTable is created using the constructor that is passed a two-dimensional array containing the row data and an array containing the column names: Object[][] data {{1,1,1},{2,2,2},{3,3,3},{4,4,4}}; String[] columnNames {Column 1,Column 2,Column 3}; JTable exampleJTable new JTable(data, columnNames); then the following cast will not work: DefaultTableModel dft (DefaultTableModel)exampleJTable.getModel(); A runtimeClassCastException will be thrown because in this instance the DefaultTableModel is declared as an anonymous inner class in the JTable object and cannot be cast. It can only be cast to the TableModel interface. A way around this is to create your own DefaultTableModel and set it to be the model of the JTable: JTable exampleJTable new JTable(); DefaultTableModel defTableModel new DefaultTableModel(data, columnNames); exampleJTable.setModel(defTableModel); Then theDefaultTableModel defTableModel can be used to manipulate the data in the JTable. To see theDefaultTableModel in action have a look at the DefaultTableModel Example Program.