https://github.com/leopiccionia/easyprint
StringBuilder wrapper, etc.
https://github.com/leopiccionia/easyprint
stringbuilder
Last synced: 9 months ago
JSON representation
StringBuilder wrapper, etc.
- Host: GitHub
- URL: https://github.com/leopiccionia/easyprint
- Owner: leopiccionia
- License: mit
- Created: 2017-04-23T13:15:41.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-05-26T03:22:05.000Z (about 9 years ago)
- Last Synced: 2025-02-25T09:45:57.865Z (over 1 year ago)
- Topics: stringbuilder
- Language: Java
- Size: 18.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# easyprint
This documentation is provisional, and should be replaced by Javadoc.
## EasyPrint
`java.lang.String` concatenation in Java is slow and bad practice, due to `String` immutability. Don't get me wrong: I dig immutability, but it's not for all tasks.
`java.lang.StringBuilder` looks too low-level and, for some tasks, too verbose -- like almost everything Java.
This package contains a wrapper for `StringBuilder` as easy, or easier, to use than `String` concatenation, with some batteries.
### Methods
```java
public EasyString(String string)
```
Creates a `EasyString` from a `String`.
```java
public EasyString(StringBuilder builder)
```
Creates a `EasyString` from a `StringBuilder`.
```java
public EasyString(Object... args)
```
Creates a `EasyString` from `Object[]` or `Object` [varargs](https://docs.oracle.com/javase/1.5.0/docs/guide/language/varargs.html).
```java
public EasyString append(Object... args)
```
Appends `Object[]` or `Object` varargs to an `EasyString` instance. Returns `this`, so can be chained.
Not recommended for appending constant values; use `EasyString()` instead.
```java
public static EasyString concat(String separator, Object... args)
```
Inspired by Lua's `table.concat()`. Interpolates each elements of args (`Object[]` or `Object` varargs) with `separator`.
Not recommended for `""` separator; use `EasyString()` instead.
```java
public static void print(Object... args)
```
Wrapper for `System.out.print(new EasyString(Object... args))`.
```java
public static void println(Object... args)
```
Wrapper for `System.out.println(new EasyString(Object... args))`.
```java
public static EasyString repeat(String string, int times)
```
Repeats `string` `times` times. For example, `repeat("*", 5)` returns `*****`.
#### from `java.lang.CharSequence`
```java
public char charArt(int index)
```
Returns the `index`-th `char` from `CharSequence` built.
```java
public int length()
```
Returns the length of `CharSequence` built.
```java
public CharSequence subSequence(int start, int end)
```
Returns the subsquence [`start`,`end - 1`] from `CharSequence` built.
```java
public String toString()
```
Returns `String` built.
## TODO
- [X] Tests
- [ ] More tests
- [ ] File writing, similarly to `print()` and `println()`
- [ ] StringBuffer wrapper
- [ ] Implementing useful interfaces
- [X] CharSequence
- [ ] Javadoc
- [ ] Benchmark against other alternatives