Loading...
More Java Posts
//sample code to write 100 random ints to a file, 1 per lineimport java.io.PrintStream;import java.io.IOException;import java.io.File;import java.util.Random;public class WriteToFile {public static void main(String[] args) {try {PrintStream writer = new PrintStream(new File("randInts.txt"));Random r = new Random();final int LIMIT = 100;for (int i = 0; i < LIMIT; i++) {writer.println(r.nextInt());}writer.close();} catch (IOException e) {System.out.println("An error occured while trying to write to the file");}}}
import javax.mail.*;import javax.mail.internet.*;import java.util.*;public void postMail( String recipients[ ], String subject, String message , String from) throws MessagingException{boolean debug = false;//Set the host smtp addressProperties props = new Properties();props.put("mail.smtp.host", "smtp.example.com");// create some properties and get the default SessionSession session = Session.getDefaultInstance(props, null);session.setDebug(debug);// create a messageMessage msg = new MimeMessage(session);// set the from and to addressInternetAddress addressFrom = new InternetAddress(from);msg.setFrom(addressFrom);InternetAddress[] addressTo = new InternetAddress[recipients.length];for (int i = 0; i < recipients.length; i++){addressTo[i] = new InternetAddress(recipients[i]);}msg.setRecipients(Message.RecipientType.TO, addressTo);// Optional : You can also set your custom headers in the Email if you Wantmsg.addHeader("MyHeaderName", "myHeaderValue");// Setting the Subject and Content Typemsg.setSubject(subject);msg.setContent(message, "text/plain");Transport.send(msg);}
import java.io.File;import java.io.IOException;import java.util.Map;import java.util.Scanner;import java.util.TreeMap;public class SimpleWordCounter {public static void main(String[] args) {try {File f = new File("ciaFactBook2008.txt");Scanner sc;sc = new Scanner(f);// sc.useDelimiter("[^a-zA-Z']+");Map<String, Integer> wordCount = new TreeMap<String, Integer>();while(sc.hasNext()) {String word = sc.next();if(!wordCount.containsKey(word))wordCount.put(word, 1);elsewordCount.put(word, wordCount.get(word) + 1);}// show resultsfor(String word : wordCount.keySet())System.out.println(word + " " + wordCount.get(word));System.out.println(wordCount.size());}catch(IOException e) {System.out.println("Unable to read from file.");}}}
//Leif Messinger//Solves wordle//Needs a list of wordle words, newline separated and 5 characters eachimport java.util.*;import java.io.File;import java.io.FileNotFoundException;class WordleSolver {public static void printPointer(int position){for(int i = 0; i < position; ++i){System.out.print(" ");}System.out.print("^");}public static void main(String[] args) throws FileNotFoundException{if(args.length < 1) return;File dictionary = new File(args[0]);Scanner sc = new Scanner(dictionary);ArrayList<String> possibleWords = new ArrayList<String>();while(sc.hasNextLine()){possibleWords.add(sc.nextLine());}Scanner input = new Scanner(System.in);while(possibleWords.size() > 0){//Choose a word out of the possible wordsfinal int randomIndex = (int)(Math.random() * possibleWords.size());String chosenWord = possibleWords.get(randomIndex);possibleWords.remove(randomIndex);System.out.println("Is it correct?");for(int i = 0; i < chosenWord.length(); ++i){System.out.println(chosenWord);printPointer(i);System.out.println(" y/n?");if(input.nextLine().toLowerCase().contains("y")){//Filter by correct characterfor(int possibleWord = possibleWords.size() - 1; possibleWord >= 0; --possibleWord){ //Has to be backwards for removing entries, also has to be int not unsignedif(possibleWords.get(possibleWord).charAt(i) != chosenWord.charAt(i)){possibleWords.remove(possibleWord);}}}}System.out.println("Is it misplaced?");//Stores a count of every letter misplacedshort[] misplacedCounts = new short[('z'-'a')+1]; //Praise be the garbage collectorfor(int i = 0; i < chosenWord.length(); ++i){System.out.println(chosenWord);printPointer(i);System.out.println(" y/n?");if(input.nextLine().toLowerCase().contains("y")){//Filter to make sure there's at least as many letters as needed++misplacedCounts[(chosenWord.charAt(i) - 'a') - 1];for(int possibleWord = possibleWords.size() - 1; possibleWord >= 0; --possibleWord){ //Has to be backwards for removing entries, also has to be int not unsignedint count = 0;for(int j = 0; j < possibleWords.get(possibleWord).length(); ++j){if(possibleWords.get(possibleWord).charAt(j) == chosenWord.charAt(i))++count;}//If there's not enough of the character that we need, then we remove that from the list of possible charactersif(count < misplacedCounts[(chosenWord.charAt(i) - 'a') - 1]){possibleWords.remove(possibleWord);}}//Also filter out words where that letter doesn't belong therefor(int possibleWord = possibleWords.size() - 1; possibleWord >= 0; --possibleWord){ //Has to be backwards for removing entries, also has to be int not unsignedif(possibleWords.get(possibleWord).charAt(i) == chosenWord.charAt(i)){possibleWords.remove(possibleWord);continue; //Breaks the current word and moves on in the loop}}}}}}}
public class UserService {private UserRepository userRepository;public UserService(UserRepository userRepository) {this.userRepository = userRepository;}public User getUserById(long id) {try {return userRepository.getUserById(id);} catch (Exception e) {// Log the exception hereSystem.out.println("An error occurred while fetching the user: " + e.getMessage());return null;}}}public class UserRepository {public User getUserById(long id) throws Exception {// Database query to fetch the userif (id < 0) {throw new Exception("Invalid user id");}// Return the user objectreturn new User(id, "John Doe");}}public class User {private long id;private String name;public User(long id, String name) {this.id = id;this.name = name;}public long getId() {return id;}public String getName() {return name;}}
import java.util.Arrays;public class QuickSortMain {private static int array[];public static void sort(int[] arr) {if (arr == null || arr.length == 0) {return;}array = arr;quickSort(0, array.length-1);}private static void quickSort(int left, int right) {int i = left;int j = right;// find pivot number, we will take it as midint pivot = array[left+(right-left)/2];while (i <= j) {/*** In each iteration, we will increment left until we find element greater than pivot* We will decrement right until we find element less than pivot*/while (array[i] < pivot) { i++; } while (array[j] > pivot) {j--;}if (i <= j) {exchange(i, j);//move index to next position on both sidesi++;j--;}}// call quickSort() method recursivelyif (left < j)quickSort(left, j);if (i < right)quickSort(i, right);}private static void exchange(int i, int j) {int temp = array[i];array[i] = array[j];array[j] = temp;}public static void main(String a[]){int[] input = {33,21,45,64,55,34,11,8,3,5,1};System.out.println("Before Sorting : ");System.out.println(Arrays.toString(input));sort(input);System.out.println("==================");System.out.println("After Sorting : ");System.out.println(Arrays.toString(array));}}