У меня есть цикл for, который пересекает String
, каждый раз вытаскивает 2 символа и присваивает их переменной.Сегмент кода, который я написал ниже:
//parse strings to integers
public int convertStringToInt(String stringOfDigits)
{
int number = 0;
int total = 0;
String subData = "";
for(int n = 0; n < stringOfDigits.length() ; n+=2) //For loop to pick out 2 digit sets of numbers from a string literal
{
subData = stringOfDigits.substring(n, n+2); //pulls a 2 digit substring and assigns it to a variable
number = Integer.parseInt(subData); //converts the substring to an integer
}
}
Мне нужно каким-то образом вернуть первые два символа в переменную (например, var1
), следующие два символа в другую переменную (var2
) искоро.Затем мне нужно вернуть все это, чтобы я мог принести его в свой основной модуль.
Любая помощь будет очень признательна!
Редактировать:
Это вся моя программа.Ответы, которые я получал, были довольно сложными для того, что я думаю, должно быть.Возможно, более простое решение лежит где-то еще.Эта программа распечатывает гистограмму, показывающую, сколько пользователей используют каждую операционную систему (linux, mac, windows), которую я знаю.String
содержит эти числа, и мне нужно ввести эти две пары цифр в метод drawBar()
, чтобы он отображал планку с таким количеством пользователей.
/**
* The purpose of this program is to draw a bar graph using turtle graphics
* and object oriented programming techniques based on information from a survey on
* Operating System use.
*
* @author Andrew Hauser (Shibumi)
* @version 1/16/12
*/
import java.awt.*; //imports the awt module
class Survey //Declares the Survey class
{
//Draws a line (or rectangle) from the first set of coordinates to the second set of coordinates.
public static void drawLine(Turtle myrtle, Color color, int penWidth, int x1, int y1, int x2, int y2)
{
myrtle.hide();
myrtle.penUp();
myrtle.setPenColor(color);
myrtle.setPenWidth(penWidth);
myrtle.moveTo(x1, y1);
myrtle.penDown();
myrtle.moveTo(x2, y2);
}//end of method
//Draws the box that the graph is contained in
public static void drawBox(Turtle myrtle, Color color)
{
myrtle.hide();
myrtle.penUp();
myrtle.setPenColor(color);
myrtle.setPenWidth(1);
myrtle.moveTo(100, 10);
myrtle.penDown();
myrtle.moveTo(400, 10);
myrtle.moveTo(400, 250);
myrtle.moveTo(100, 250);
myrtle.moveTo(100, 10);
myrtle.penUp();
}
//Draws the value lines on the outside of the box
public static void drawBoxLines(Turtle myrtle, Color color)
{
myrtle.hide();
myrtle.penUp();
myrtle.setPenWidth(1);
myrtle.moveTo(100, 250);
for(int nums = 0; nums <=10; nums++)
{
myrtle.turnLeft();
myrtle.penDown();
myrtle.forward(10);
myrtle.penUp();
myrtle.backward(10);
myrtle.turnRight();
myrtle.forward(20);
}
}
//Draws a bar for the graph
public static void drawBar(Turtle myrtle, Color color, int value, int x1, int y1)
{
myrtle.hide();
myrtle.penUp();
myrtle.setPenColor(color);
myrtle.setPenWidth(1);
myrtle.moveTo(x1, y1);
myrtle.penDown();
myrtle.forward(value * 10);
myrtle.turnRight();
myrtle.forward(10);
myrtle.turnRight();
myrtle.forward(value * 10);
myrtle.penUp();
myrtle.turnLeft();
myrtle.turnLeft();
}
//parse strings to integers
public int convertStringToInt(String stringOfDigits)
{
int number = 0;
int total = 0;
String subData = "";
for(int n = 0; n < stringOfDigits.length() ; n+=2) //For loop to pick out 2 digit sets of numbers from a string literal
{
subData = stringOfDigits.substring(n, n+2); //pulls a 2 digit substring and assigns it to a variable
number = Integer.parseInt(subData); //converts the substring to an integer
}
}
}
public class SurveyTester //Declares the SurveyTester class
{
//Executes the code.
public static void main(String[] args) //Start of main method
{
World worldObj = new World(); //Makes a new world
Turtle myrtle = new Turtle(0, 0, worldObj); //Makes a new Turtle object
Picture pictureObj = new Picture("Graph_background.png");
worldObj.setPicture(pictureObj);
Survey survey = new Survey(); //Makes a new Survey object
stringData = "031016";
survey.drawBox(myrtle, Color.BLACK);
survey.drawBoxLines(myrtle, Color.BLACK); //Draws lines by twos
survey.drawBar(myrtle, Color.RED, 3, 150, 250); //Bar for linux
survey.drawBar(myrtle, Color.RED, 10, 240, 250); //Bar for Mac
survey.drawBar(myrtle, Color.RED, 16, 330, 250); //Bar for windows
}
}
Справка была бы очень признательна!
PS.Если вы действительно хотите запустить , чтобы увидеть, как это выглядит, вам понадобится библиотека bookClasses Java, которую вы можете получить из моего выпадающего списка здесь: http://db.tt/H8zmyA75