Is there a better way of getting this result? This function fails if num has more digits than digits, and I feel like it should be in the library somewhere (like Integer.toString(x,"%3d") or something)

``````static String intToString(int num, int digits) {
StringBuffer s = new StringBuffer(digits);
int zeroes = digits - (int) (Math.log(num) / Math.log(10)) - 1;
for (int i = 0; i < zeroes; i++) {
s.append(0);
}
return s.append(num).toString();
}
``````

16

String.format (https://docs.oracle.com/javase/1.5.0/docs/api/java/util/Formatter.html#syntax)

In your case it will be:

``````String formatted = String.format("%03d", num);
``````
• 0 - to pad with zeros
• 3 - to set width to 3
Tuesday, June 1, 2021

88

Try this: http://jsfiddle.net/xA5B7/

``````var MyDate = new Date();
var MyDateString;

MyDate.setDate(MyDate.getDate() + 20);

MyDateString = ('0' + MyDate.getDate()).slice(-2) + '/'
+ ('0' + (MyDate.getMonth()+1)).slice(-2) + '/'
+ MyDate.getFullYear();
``````

EDIT:

To explain, `.slice(-2)` gives us the last two characters of the string.

So no matter what, we can add `"0"` to the day or month, and just ask for the last two since those are always the two we want.

So if the `MyDate.getMonth()` returns `9`, it will be:

``````("0" + "9") // Giving us "09"
``````

so adding `.slice(-2)` on that gives us the last two characters which is:

``````("0" + "9").slice(-2)
"09"
``````

But if `MyDate.getMonth()` returns `10`, it will be:

``````("0" + "10") // Giving us "010"
``````

so adding `.slice(-2)` gives us the last two characters, or:

``````("0" + "10").slice(-2)
"10"
``````
Tuesday, June 1, 2021

17

While it hasn't been resolved yet, there is a possible workaround, based on:

So here are the steps to solve it:

• Install NetBeans 10 and JDK 11.0.2.

• Clone the HelloFX sample for NetBeans and Maven, from the OpenJFX samples.

• Update the JavaFX dependencies to 11.0.2.

``````<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>11.0.2</version>
</dependency>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-fxml</artifactId>
<version>11.0.2</version>
</dependency>
``````
• Run it:

``````mvn clean compile exec:java
``````
• Check that the JavaFX dependencies have been downloaded to your local `m2` repository. Under `<user home>/.m2/repository/org/openjfx/javafx-base/11.0.2` for instance you will find `javafx-base-11.0.2.jar` and `javafx-base-mac-11.0.2.jar` (or `win`, or `linux` based on your platform).

• Back on NetBeans, right click in the Dependencies folder and select `Download Sources` (see the task progress in the bottom right taskbar), and then `Download Javadoc`(see the task progress).

• Go to your `m2` repository and verify that there are now `-source` and `-javadoc` jar files.

However, this won't solve the issue yet, there is an extra step:

• In your `m2` repository, manually rename the `-source` and `-javadoc` jar files using your platform classifier, to `-mac-source` and `-mac-javadoc` (or `win`, or `linux` based on your platform). Do this for the different JavaFX modules:

Back to NetBeans, check that now you have JavaDoc, or if you press Ctrl/CMD+Click you can access the source.

Note that this fix has to be done only once, the rest of your Maven projects should pick JavaDoc and Sources.

Thursday, August 5, 2021

68

if you are going to step down, then change your project's source to 1.7 as well,

``````right click on your Project -> Properties -> Sources window
``````

and set `1.7` here

note: however I would suggest you to figure out why it doesn't work on 1.8

Saturday, September 4, 2021

51

`Timer` is used to schedule tasks.. So where do you write those tasks?? Well you have to write those tasks in a `TimerTask` class...

Confused ? Let me break it down,

``````Timer timer = new Timer();
``````

Now you have created a object of Timer class .. Now you have to do some task right? So to do that create an object of `TimerTask`.

``````TimerTask task = new TimerTask()
{
public void run()
{
//The task you want to do
}

};
``````

Now you have created a task where you should be defining the tasks you want to do inside the run method..

Why have I written a TimerTask class itself?? Thats because TimerTask is a abstract class with three methods.. So you need to define whichever method you want to use..

``````timer.schedule(task,5000l);
``````

Note the 'l' after 5000. It is to denote long data type because the `schedule` method is defined as

`void schedule(TimerTask task,long milliseconds)`

For further reference

https://docs.oracle.com/javase/7/docs/api/java/util/Timer.html