This is a solution on how you could solve you problem, I m again working in java a little bit so I m trying to get the syntax to my brain so I hope that people won't get mad for posting the solution...
public class Solution
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
String concat="";
String input = sc.nextLine();
char [] array=input.toCharArray();
for(int i =0;i<array.length;i++)
{
int z=(int)array[i];
String binary=decToBin(z);
concat=concat+CheckNumbersOfDigits(binary);
concat+="-";
}
out.println(removeLastChar(concat));
}
private static String CheckNumbersOfDigits(String digit)
{
int diglen=digit.length();
int add_dig=8-diglen;
for(int i=0;i<add_dig;i++)
{
digit="0"+digit;
}
return digit;
}
public static String decToBin(int dec)
{
if (dec == 0) {
return "0"; // special case
}
final StringBuilder result = new StringBuilder();
int current = dec;
while (current != 0) {
result.append(current & 0x1);
current = current >> 1;
}
return result.reverse().toString();
}
private static String removeLastChar(String str) {
return str.substring(0,str.length()-1);
}
}